我有,比方说www.website.org/folder/里面有以下.htaccess
RewriteEngine On
RewriteRule ^folder/[0-9]+ http://www.website.org/folder/index.php?n=$1 [NC]
在folder
内我有很多文件夹,例如1234
,4567
等。我正在寻找的行为是从www.website.org/folder/1234
重写为www.website.org/folder/index.php?n=1234
。但是,由于某种原因,重写没有发生,我得到一个Forbidden错误(假设你无法访问目录本身)。
我该如何解决这个问题? 非常感谢你
- 注意:我不得不放弃Options +FollowSymlinks
因为我从提供商的网络服务器收到Option FollowSymLinks not allowed here
错误。
- 编辑1
根据Jason的帖子,我修改了.htaccess如下(我仍然保留在folder
中):
RewriteEngine On
RewriteBase /folder/
RewriteRule ^folder/([0-9]+)/?$ /folder/index.php?n=$1 [NC,L]
但它仍然把我带到文件夹,为什么会这样?谢谢!
答案 0 :(得分:1)
编写规则的方式, .htaccess 应该在您的webroot中,而不是folder
目录。
或者,您可以修改RewriteBase
。但是,我会做以上操作并使用:
RewriteEngine On
RewriteBase /
RewriteRule ^folder/([0-9]+)/?$ /folder/index.php?n=$1 [NC,L]