2014-11-15 144 views
1

我想通过htaccess的做以下的mod_rewrite:htaccess的:重写路径和查询字符串来查询字符串

/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

P标志不用于你想要做的事情。
你必须使用QSA标志代替(Q uery 小号特林一个 PPEND)

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

此外,确保的mod_rewrite启用在Apache服务器配置(和的AllowOverride具有启用htaccess的正确值,例如全部而不是

+0

完美!谢谢! – Gerfried

+0

不客气。不要忘记验证我的答案来解决你的问题 –