这是我的.httaccess文件。mod_rewrite行事怪异
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.mysite.com [NC]
RewriteRule ^(.*)$ mysite.com/$1 [L,R=301] << http: has been deleted to post this message.
RewriteBase/
RewriteRule ^gallery/([^/]*)$ /gallery.php?page=$1 [L,NC,QSA]
RewriteRule ^venues/([a-zA-Z0-9-/]+)/$ /venues.php?page=$1 [L,NC,QSA]
可以完美兼容之前创建的链接,
一样,如果网址是:
mysite.com/gallery/my-old-link
模块将其重写为mysite的。 com/gallery.php?page = my-old-link
刚刚添加了一个新类别,没什么特别的,相同的字符 -
mysite.com/gallery/my-new-link
我期待模块将其重写为
mysite.com/gallery.php?page=my-new-link
但是,让这:
mysite.com/gallery/my-new-link/?page=my-new-link
并与403错误消息的网页:
禁止
您没有权限访问/ gallery/my-new-link /在此 服务器上。
此外,在尝试 使用ErrorDocument来处理请求时遇到404未找到错误。
尝试评论你的第一个301规则,然后在新的浏览器中重新测试。 – anubhava
是否有一个名为'/ gallery/my-new-link'的目录? –
@anubhava那么它根本不起作用。 –