htaccess重写规则不起作用

时间:2010-02-16 09:13:35

标签: php linux apache unix .htaccess

在我的.htaccess文件中,我确实有这些行:

Options +FollowSymLinks 
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule
^([a-zA-Z0-9_-]+)/([0-9])/([a-zA-Z0-9_-]+)\.(html)$ /first_gate/index.php?show=true&_=$1&__=$2 [QSA]

所以打电话:

http://www.domain.com/a-b-c-d/123/an-thing-here.html

在背景中它的目的是:

http://www.domain.com/first_gate/index.php?show=true&cat=a-b-c-d&sub_cat=123
  

(这里的东西)部分不会   用于检索数据,但只是为了   改善SEO。

我得到了:404未找到。

任何帮助都会非常感激。 谢谢,

1 个答案:

答案 0 :(得分:1)

您的第二个模式组仅匹配一个数字,请尝试此选择:

Options +FollowSymLinks 
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule
^([a-zA-Z0-9_-]+)/([0-9]+)/([a-zA-Z0-9_-]+)\.(html)$ /first_gate/index.php?show=true&_=$1&__=$2 [QSA]

我刚刚在模式+之后添加了[0-9]