URL重写/正则表达式调试

Cor*_*Dee 3 apache .htaccess mod-rewrite url-rewriting

我需要一套清新的眼睛.我很难发现这个问题.

在文件夹XI中有一个.htaccess文件,其中包含以下两行:

RewriteEngine on
RewriteRule ^([A-Za-z0-9\.-]+)/?$ item-display.php?bibid=$1 [NC,L]
Run Code Online (Sandbox Code Playgroud)

我的解释是,该目录中的任何内容都将被重定向到项目显示页面.问题是在项目显示页面上,回显出bibid输出'display-item'的值.所以不知怎的,我正在从: http:// localhost/test/cat/item/14056a重定向 到:http://localhost/test/cat/item/item-display.php?bibid = item-display

有任何想法吗?

干杯

Gum*_*mbo 5

您必须排除要重定向到的文件,因为它也与模式匹配:

RewriteCond %{REQUEST_URI} !/item-display\.php$
RewriteRule ^([A-Za-z0-9\.-]+)/?$ item-display.php?bibid=$1 [L]
Run Code Online (Sandbox Code Playgroud)