这是我的htacess文件:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.com(.*)
RewriteRule .* inside.php?tx=%1&filter=%2
此网址:hello.mydomain.com访问www.mydomain.com/inside.php?tx=hello 多数民众赞成。
现在我需要这个网址hello.mydomain.com/bye/转到www.mydomain.com/inside.php?tx=hello&filter=bye,但是不行。只访问www.mydomain.com/inside.php?tx=hello
这个htaccess忽略了第二个变量(再见)。请帮助。
答案 0 :(得分:0)
%{HTTP_HOST}
仅包含主机名(hello.mydomain.com
),因此您的第二个反向引用中没有任何内容。将RewriteRule
更改为以下内容应该会给出您期望的行为:
RewriteRule ^([^/]*) inside.php?tx=%1&filter=$1
修改:要更正评论中描述的情况,整个规则集应如下所示:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.com(.*)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]*) inside.php?tx=%1&filter=$1