htaccess:将查询路径和查询字符串重写为查询字符串

时间:2014-11-15 22:45:03

标签: .htaccess mod-rewrite

我想通过htaccess执行以下mod_rewrite:

/xxx/yyy/?zzz=2  -->  /index.php?src=xxx/yyy/&zzz=2

我尝试了以下操作,但它不起作用(404错误):

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?src=$1&%{QUERY_STRING} [P,L]

非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

P标志不用于您想要做的事情 你必须改为使用QSA标志( Q uery S tring A ppend)

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?src=$1 [L,QSA]

此外,请确保Apache服务器配置中的 mod_rewrite 已启用(并且 AllowOverride 具有正确的值以启用htaccess,例如< strong>全部而不是