我有这样的网址:
http://foo.bar/index.php?page=this-is-the-page
现在我必须找到带有mod_rewrite的拼写错误的URL,如下所示:
http://foo.bar/index.php?page=this--is-the-page
不幸的是到目前为止我无法找到正确的 RewriteRule :
Options -MultiViews
RewriteEngine On
RewriteCond %{QUERY_STRING} ^page=(\w+)--((\w+)(-(\w+))*)$
RewriteRule ^index\.php$ /index.php?page=%1-%2
问题似乎是“?”这应该意味着QSD。 无论如何,在文章中以这种方式提出了建议。 mod_rewrite to change query string parameter name
那么,如何仅使用mod_rewrite重新组织查询字符串值?搜索引擎优化友好和黑客PHP代码不是一个问题
答案 0 :(得分:1)
尝试此规则:
RewriteCond %{QUERY_STRING} ^page=(.*?)--([^&]*)
RewriteRule ^index\.php$ /index.php?page=%1-%2 [L,R]