我有一个问题。我需要我的网站只从移动的设备进入,如果他们从一个桌面网站进入,重定向到另一个页面,我实现的是这样,
RewriteCond %{QUERY_STRING} !^android
RewriteCond %{HTTP_USER_AGENT} "Windows" [NC]
RewriteRule ^$ https://google.com [L,R=302]
它工作正常,但如果您进入另一个子目录,如mywebsite.com/cats可以从桌面进入,我如何阻止子目录,并将其重定向到另一个网站
1条答案
按热度按时间f8rj6qna1#
你的
RewriteRule
只匹配空的路径,比如像https://example.com/
这样的URL。但是你想匹配 any 路径,这样 all 请求就会被重定向。所以你只需要改变你的匹配模式:另一种方法是保留重定向目标的请求路径(取决于您实际想要实现的目标):
您当前使用的是
R=302
* 临时 * 重定向。非常适合测试!但请记住,一旦一切正常工作,请将其更改为R=301
* 永久 * 重定向。我还从你的规则中删除了第二个条件。不是所有的“桌面系统”都使用MS-Windows操作系统。我想,还有很多基于MacOS和Linux的系统你也想处理。