我需要重写一个url,以便为所有对子域的请求添加一个url变量。
示例:
m.mydomain.com ==> m.mydomain.com?mobileFormat=true
这是触发我的网站的移动版本加载的标志。
应该很容易吗?到目前为止我所尝试的一切都没有用。
以下是我目前在.htaccess文件中的代码:
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^([a-zA-Z0-9/-]+)$ /index.cfm%{REQUEST_URI} [PT]
RewriteRule ^locale/([^/]*)$ /?siteLocale=$1 [L]
RewriteCond %{HTTP_HOST} ^m\.(.*)$
RewriteRule ^(.*)$ m.%1/$1?mobileFormat=true [QSA]
感谢您的帮助。
答案 0 :(得分:1)
我假设这是你尝试过的:
RewriteCond %{HTTP_HOST} ^m\.(.*)$
RewriteRule ^(.*)$ m.%1/$1?mobileFormat=true [QSA]
QSA是查询字符串附加 - 如果他们尝试访问的URL是:
m.mydomain.com?test=yes
然后上面会将其重写为:
m.mydomain.com?mobileFormat=true&test=yes
答案 1 :(得分:0)
我正在寻找的解决方案是:
RewriteCond %{HTTP_HOST} ^m\.(.*)$ [NC]
RewriteCond %{REQUEST_URI} !\.(xml|jpg|gif|png|js|css)$
RewriteRule .? $1?mobileFormat=true [QSA,L]
感谢所有帮助。