我在.htaccess重写时已经失去了几个小时 我有这个网址:
http://xxx.yyy.zzz.net/html/login.php?sub=string
我想把它改成这个
http://string.yyy.zzz.net/html/login.php
答案 0 :(得分:1)
此方法仅限于一个参数名称:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?xxx\.yyy\.zzz\.net
RewriteCond %{QUERY_STRING} ^sub=(.*)$
RewriteRule ^html/(.*)$ http://%1.xxx.yyy.zzz.net/$1? [L] <--note the use of %1
问题是(如此处所述:http://wiki.apache.org/httpd/RewriteQueryString): mod_rewrite 无法直接访问和操作查询参数,您的可能性非常有限。如果您只有一种用于管理重定向的参数,那么您就可以了。
(注意:如果你有其他想要移交给目标的查询参数,请省略最后一个问号。这有效地删除了查询字符串的其余部分。另外,第二次重写条件必须重写为结束参数)