我需要将URL article.php?id = x重写为index.php?p = x 我试过这个
RewriteRule ^article.php?id=(.*)$ index.php?p=$1 [QSA]
但它不起作用,虽然这个RewriteRule ^article.php/(.*)$ index.php?p=$1 [QSA]
对article.php / x非常有效。我该怎么办?
答案 0 :(得分:0)
您无法与RewriteRule
中的查询字符串匹配,您需要与%{QUERY_STRING}
中的RewriteCond
变量匹配:
RewriteCond %{QUERY_STRING} ^id=(.*)$
RewriteRule ^article\.php$ index.php?p=%1 [L]
此外,您不想在此处使用QSA
标志,因为这会附加您不想要的查询字符串。< / p>