我在站点公共目录中有文件sitemap.xml。当我使用子域'm。'时,它使用与普通站点相同的公共目录。当我在子域'm'上时,我需要从url'/ sitemap.xml'返回'/mobile-sitemap.xml'文件。
哪些nginx模块和规则可以帮助我做到这一点?
我的第一步是这样的:
if ($host ~* m\.(.*)) {
#if url = /sitemap.xml, give back file /mobile-sitemap.xml as /sitemap.xml
}
或者谷歌可以,如果我只是将301重定向发送到另一个站点地图文件?
答案 0 :(得分:1)
您可以为移动子域创建单独的服务器块,在这种情况下,if
语句不是必需的。有关使用if
的信息,请参阅this caution。
但是,要在单个服务器块中实现此功能,请使用location
和rewrite
:
location = /sitemap.xml {
if ($host ~* m\.) {
rewrite ^ /mobile-sitemap.xml last;
}
}