gpt4 book ai didi

apache - 打开 RewriteEngine 会产生 403 错误——如何打开 FollowSymLinks?

转载 作者:行者123 更新时间:2023-12-02 02:23:20 28 4
gpt4 key购买 nike

我正在 OSX 上使用内置的 Apache2。我将文档根目录移至桌面上的一个文件夹,并确保 _wwweveryone 具有读取权限。它工作得很好,PHP 工作得很好,一切工作正常,直到我仅使用这一行添加 .htaccess :

RewriteEngine on

一旦我这样做,包含该文件的目录中的所有内容都是 403 Forbidden:

Forbidden
You don't have permission to access /dir/file.txt on this server.

Apache 日志显示此错误:

[error] [client 127.0.0.1] Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden: /Users/uname/Desktop/localhost/dir/filename.txt

我已经检查了 httpd.conf 并确保我启用了 FollowSymLinks 但没有效果:

DocumentRoot "/Users/uname/Desktop/localhost"
<Directory />
Options FollowSymLinks
Options SymLinksIfOwnerMatch
AllowOverride All
Order allow,deny
Allow from all
</Directory>

<Directory "/Users/uname/Desktop/localhost">
Options FollowSymLinks
Options SymLinksIfOwnerMatch
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

如果我在 .htaccess 文件中注释掉 RewriteEngine on ,那么显然除了重写规则之外,一切都正常。在 OSX 10.8.5 上,httpd.conf 位于 /etc/apache2 中,其中还有包含单独文件的文件夹 users,例如uname.conf,但我在这里添加了与其他相同的符号链接(symbolic link)。我注意到还有一个文件夹 extra ,其中包含 httpd-userdir.conf 之类的文件,但它们似乎没有禁用任何内容。

还有什么地方可以打开(或关闭)FollowSymLinks?

最佳答案

您必须将选项放在一行上,或者在选项前面添加一个 + 符号,以便 Apache 知道您想要合并它们。目前,仅应用最后一个选项指令(“Options Indexes MultiViews”),因为它会覆盖所有先前的选项。

试试这个(这将覆盖“/”选项):

<Directory "/Users/uname/Desktop/localhost">
Options Indexes MultiViews FollowSymLinks SymLinksIfOwnerMatch
AllowOverride All
Order allow,deny
Allow from all
</Directory>

关于apache - 打开 RewriteEngine 会产生 403 错误——如何打开 FollowSymLinks?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22621643/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com