对不起,这可能是一个简单的问题,但我已经阅读了大量的教程,但无法解决这个问题。以下是URL示例:
http://localhost:8106/privacy-policy/?lang=fr&dest=app
.htaccess内容:
RewriteEngine on
RewriteRule ^privacy-policy/?lang=([a-z][a-z])&dest=app$ privacy-policy/$1 [NC,L] 当我访问URL时,我不会被重定向。有什么想法吗?
谢谢
发布于 2015-07-21 02:17:19
不能匹配规则中的查询字符串,需要使用%{QUERY_STRING}变量:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^lang=([a-z][a-z])&dest=app$
RewriteRule ^privacy-policy/$ privacy-policy/%1 [NC,L] 请注意,反向引用需要为%1。如果您需要它来重定向浏览器,您还需要在方括号中使用R标志。
发布于 2015-07-21 08:35:35
感谢Jon Lin在query_string和%1编辑中提供的线索。它最终没有使用该代码的复制/粘贴,但这是我最终得到的结果,它正在工作:
RewriteCond %{REQUEST_URI} privacy-policy
RewriteCond %{QUERY_STRING} lang=(\w+)&dest=app
RewriteRule ^privacy-policy/$ /privacy-policy/%1? [R=301,L]再次感谢你在这方面的帮助。
https://stackoverflow.com/questions/31523450
复制相似问题