匹配所有请求nginx位置

时间:2014-08-22 07:49:22

标签: regex nginx location

我正在尝试将对sitemap.xml的任何请求重定向到nginx中的特定文件夹,但我无法编写正确的正则表达式来执行此操作。

我尝试了几种选择,但没有一种可行。在我看来应该工作的是:

location ~ \.xml$ {
    root /home/www/public/sitemaps;
} 

但有了它,它只匹配http://localhost:8080/sitemap.xml,但它与http://localhost:8080/other/sitemap.xml不匹配。

如何编写正则表达式以匹配以sitemap.xml结尾的任何URL?

感谢您的帮助。 /何塞卡洛斯

1 个答案:

答案 0 :(得分:0)

检查其他正则表达式。如果你有两个正则表达式,包括" xml",nginx将使用"更大的"两者之间的匹配。

无论如何,你可以阅读this thread。第一个答案是告诉你尝试类似的事情:

location /sitemap.xml {
    alias /home/www/public/sitemaps/sitemap.xml;
}