我有一个如下所示的重写规则:
RewriteRule ^([a-zA-Z0-9\-]+)\/([a-zA-Z0-9\-]+)/?$ /index.php?name=$1&artname=$2
当我尝试访问存在的目录结构时:/pics/vikings
浏览器 url 被重写为/pics/vikings/?name=pics&artname=vikings
. 但这仅在我不将最后一个包含/
在 url 中时才会发生。所以/pics/vikings/
不会暴露真实的url。
我尝试为现有目录添加规则,例如:
RewriteRule ^pics\/vikings/?$ /index.php
当目录存在时,我也尝试按照 Rewriting url with htaccess 中的DirectorySlash Off
建议添加
编辑:
我的 .htaccess 文件:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9\-]+)\/([a-zA-Z0-9\-]+)/?$ /index.php?name=$1&artname=$2
Options All -Indexes
ErrorDocument 403 /
ErrorDocument 404 /
ErrorDocument 405 /
ErrorDocument 500 /