如果从桌面打开网站,则只在移动端打开网站,重定向到另一个带有.htaccess的页面



我有一个问题。我需要我的网站只能从移动设备进入,如果他们从桌面网站进入,将其重定向到另一个页面,我所实现的是,

RewriteCond %{QUERY_STRING} !^android
RewriteCond %{HTTP_USER_AGENT} "Windows" [NC]
RewriteRule ^$ https://google.com [L,R=302]

它工作得很好,但如果你进入另一个子目录,如mywebsite.com/cats可以从桌面进入,我怎么能阻止子目录并将其重定向到另一个网站

您的RewriteRule只匹配空路径,所以像https://example.com/这样的URL。然而,您希望匹配任何路径,以便所有请求都被重定向。所以你只需要改变你的匹配模式:

RewriteCond %{QUERY_STRING} !^android [NC]
RewriteRule ^ https://example.com/ [L,R=302]

另一种选择是保留重定向目标的请求路径(取决于您实际想要实现的目标):

RewriteCond %{QUERY_STRING} !^android [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [L,R=302]

您当前正在使用R=302临时重定向。非常适合测试!但是请记住,一旦一切正常工作,将其更改为R=301永久重定向。

我还从你的规则中删除了第二个条件。并不是所有的"桌面系统"使用MS-Windows操作系统。我猜你也想处理许多基于MacOS和Linux的系统。

相关内容

  • 没有找到相关文章

最新更新