我想使用重写规则来清除我的网址

时间:2015-01-11 13:12:50

标签: php mysql .htaccess mod-rewrite clean-urls

我想在.htacces使用RewriteRule来清除我的网址。

我想将 /product/detail.php?id=red-shirt 改为 / product / red-shirt

我尝试使用 RewriteRule ^ /?product /([^ / d] +)/?$ /product/detail.php?id=$1 [L,QSA] ,但确实如此不行。

2 个答案:

答案 0 :(得分:1)

你得到404因为你的正则表达式错了。使用此规则来解决此问题:

# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^product/([^/]+)/?$ /product/detail.php?id=$1 [L,NC,QSA]

答案 1 :(得分:0)

我会一直得到404错误。 如果我将/ d更改为\ d,我将获得内部服务器错误500