Htacces 移动重定向循环

Htacces 移动重定向循环

如果检测到移动设备,我需要更改我的网站模板,但我遇到了重定向循环。这是我的 htacces 代码。非常感谢您的帮助。谢谢!

RewriteCond %{HTTP_USER_AGENT} (GoogleTV|android|mobile|blackberry|brew|htc|j2me|lg|midp|mot|motorola|netfront|nokia|obigo|
openweb|opera.mini|palm|psp|sanyo|sch|sonyericsson|symbian|symbos|teleca|up.browser|vodafone|
wap|webos|windows.ce) [NC]

RewriteRule ^(.*)$ http://www.mysite.com/?set_the_template=mobile_template [L,R=301]

答案1

现在的情况是,每次有人使用列表中列出的用户代理时,他们都将被重定向到http://www.mysite.com/?set_the_template=mobile_template。当他们尝试访问时,他们又被重定向到http://www.mysite.com/?set_the_template=mobile_template。如此反复,永无止境。这是一个循环。

我建议您以其他方式执行此操作,可能是通过设置环境变量并让您的应用程序提供正确的模板。或者更好的是,按照 Michael Hampton 的建议并在应用程序内执行此操作,包括让用户选择查看完整网站。

如果你确实想用 mod_rewrite 来做这件事,你需要添加一个条件来排除已经拥有 的客户端?set_the_template=mobile_template。例如:

RewriteCond %{QUERY_STRING} != set_the_template=mobile

相关内容