为什么不';我的重写规则工作


Why doesn't my rewrite rule work?

我正在努力让我的URL对SEO更友好,我坚持基本原则,但这个规则不起作用,我不知道为什么。

这是现在的URL:

metro/metroreports.php?city=ny

它需要看起来像这样:

metro/bug-reports-for-ny

这是.htaccess文件:

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^bug-reports-for-([0-9a-zA-Z]+) metroreports.php?city=$1 [NC,L]

这一切看起来都很直接,但由于某种原因不起作用。有人能帮我一下吗?

规则中的^匹配字符串的开头;尝试用metro/预处理或删除

RewriteRule /metro/bug-reports-for-([0-9a-zA-Z]+) /metro/metroreports.php?city=$1 [NC,L]

尝试

RewriteRule ^bug-reports-for-([0-9a-zA-Z]+)$ metroreports.php?city=$1 [NC,L]