.htaccess - 用户代理的 mod_rewrite 不起作用?

标签 .htaccess user-agent

我想实现以下目标,如果有人使用 Android/iPhone 用户代理进入网站,我想将他的所有网址重写到一个目录,例如:

user enters -> user served
example.com -> example.com/mobile
example.com/review/12 -> example.com/mobile/review/12

我的 .htaccess 中有以下示例代码片段,但它不起作用...

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} Android
RewriteRule ^(.*)/$ mobile/$1

最佳答案

尝试将以下内容添加到站点根目录中的 htaccess 文件中。

RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_USER_AGENT} Android [NC]
RewriteCond %{REQUEST_URI} !^/mobile [NC]
RewriteRule ^(.*)/?$ mobile/$1 [L]

如果您想更改用户在浏览器地址栏中看到的内容,请将最后一行更改为

RewriteRule ^(.*)/?$ mobile/$1 [L,R]

关于.htaccess - 用户代理的 mod_rewrite 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8974126/

相关文章:

php - 使用 PHP 和 CURL 下载 htaccess 保护的文件

apache - .htaccess - 通用规则

ios - 在 Varnish 中检测设备并且没有缓存

php - 重写 URL 的 Glype (nginx)

security - 重写规则以隐藏 URL

javascript - 如何在 Chrome 打包应用中修改 User-Agent

user-agent - 用户代理字符串上的 "BRI/2" token 是什么意思

blackberry - Blackberry System.getProperty(“browser.useragent”)

php - 在 ssl 过期后强制将 https 重定向到 http

java - java 客户端的 http header 的 useragent 值应该是什么