htaccess文件夹和root的RewriteRule

时间:2012-05-06 03:13:11

标签: apache .htaccess mod-rewrite url-rewriting

我的网站结构如下:

  • Folder1中
  • FOLDER2
  • Folder3

对于我的root,我有一个重写,将root.com/index.php?id=12发送到root.com/12,并且工作正常。

但是,我也希望root.com/folder1/index.php?id=12成为root.com/folder1/12,而且根本不能解决问题。

以下是我的htaccess代码:

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?id=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?id=$1
RewriteRule ^folder1/([a-zA-Z0-9_-]+)$ /folder1/index.php?id=$1
RewriteRule ^folder1/([a-zA-Z0-9_-]+)/$ /folder1/index.php?id=$1

请告诉我,我对folder1 rewriterule做错了什么?非常感谢。

另外,如何使用第一条规则进行例外处理,以便root.com/folder1不会应用于第一条重写规则?

1 个答案:

答案 0 :(得分:1)

  

另外,如何使用第一条规则进行例外处理   root.com/folder1没有应用于第一个重写规则?

您可以在mod_rewrite命令的末尾添加[L],这意味着该指令是最后一个。因此,如果匹配,则不会有进一步的说明。

因此,使用此功能,您可以先编写更具体的说明,然后再更一般。