我无法为某些路径和文件类型定义位置块。 我正在使用wordpress并使用一个生成动态站点地图的插件。它重定向到像sitemapindex.xml这样的路径,它实际上并不存在,而且nginx正试图静态地提供它。
我需要能够将此传递给apache
我需要向apache发送http://example.com/blog/ *。xml的任何内容。这就是我正在尝试的,它不起作用..例如:
http://example.com/blog/post.xml or http://example.com/blog/sitemapindex.xml
nginx config
server {
location ~* ^/blog/*.xml$ {
include /etc/nginx/proxy_params;
proxy_pass http://127.0.0.1:8080;
}
}
正确的语法是什么
由于
答案 0 :(得分:3)
我的图像有类似的问题。在我的应用程序中,图像是从两个不同的位置提供的。
您可以根据网址格式指定不同的来源。您的解决方案看起来就像这样。
location ~* ^/blog/.+\.(xml)$ {
root /some/path/;
expires 90d;
}
location ~* \.(xml|js|jpg|png|css|html|otf|eot|svg|ttf)$ {
root /some/other/path/;
expires 30d;
index index.html;
}
答案 1 :(得分:1)
要逃离那个时期
server {
location ~* ^/blog/.*\.xml$ {
proxy_pass http://127.0.0.1:8080;
}
}