使用.htaccess基于浏览器重定向用户

时间:2015-06-22 23:22:43

标签: .htaccess redirect

如果用户使用Chrome,我想重定向用户。我已尝试使用javascript / jquery,但没有一致的结果,如果有的话。我知道如何使用.htaccess重定向,但不知道重定向基于浏览器的的语法。请帮忙!如果有更好的方式,我就会开放。

2 个答案:

答案 0 :(得分:0)

重定向

cPanel中有一个工具可以为您创建重定向,请参阅如何创建重定向

从特定文件重定向到新文件

示例:

重定向/redirect_from.html newsite.com/folder/redirect_to.html 在上面的示例中,名为redirect_example.html的根目录中的文件被重定向到URL newsite.com/folder/redirect_example.html 如果旧文件位于子目录中,则可以使用:

/subdirectory/redirect_from.html WildCard重定向/从一个文件夹重定向到新文件夹

重定向/ redirect_from newsite.com/redirect_to 现在,对于/ olddirectory下面的站点的任何请求都将被重定向到新站点,并添加了URL中的额外信息,例如,如果有人输入:

http://www.example.com/redirect_from/images/image.gif 他们将被重定向到:

http://www.newsite.com/redirect_to/images/image.gif

答案 1 :(得分:0)

现在我遇到了你的问题并且也有解决方案。您可以在.htaccess文件中使用RewriteCond指令来测试用户的客户端是否为firefox或chrome并相应地重定向。代码看起来如下所示: RewriteCond%{HTTP_USER_AGENT} Firefox RewriteRule ^ abc.html $ example.com/xy/firefox.html [R = 301]

这会将所有在用户字符串中使用firefox的浏览器重定向到firefox.html。您需要找到有多少浏览器命名其用户字符串并将其相应地放入代码中。 当您无法为浏览器找到正确的HTTP_USER_AGENT字符串时可能会遇到一些问题,即如果chrome的用户名是firefox,那么chrome的用户也会被重定向到firefox.html。

因此,下面的代码可能适合您:

上的RewriteEngine

RewriteCond%{HTTP_USER_AGENT} Firefox RewriteRule ^ me.html $ firefox.html [NC,L]

RewriteCond%{HTTP_USER_AGENT} Chrome RewriteRule ^ me.html $ chrome.html [NC,L]

RewriteCond%{HTTP_USER_AGENT} MSIE RewriteRule ^ me.html $ ie.html [NC,L]

RewriteCond%{HTTP_USER_AGENT} Safari RewriteRule ^ me.html $ safari.html [NC,L]

RewriteCond%{HTTP_USER_AGENT} Opera RewriteRule ^ me.html $ opera.html [NC,L]

RewriteRule ^ me.html $ default.html [L]

L标志确保如果没有用户字符串匹配,则打开默认页面。

我希望这会对你有所帮助。

相关问题