提问人:Pekka 提问时间:2/8/2010 最后编辑:Pekka 更新时间:3/8/2011 访问量:13261
403 禁止使用 Web 根目录中的符号链接
403 Forbidden on symlink in web root
问:
我在 LAMP 堆栈上的共享主机包上,没有 shell 访问权限。
我可以使用 PHP 的函数创建符号链接。symlink()
假设我的 Web 根目录是/home/www/user1/public
假设我有一个名为/home/www/user1/public/real_dir
我创建了一个名为 pointing to/home/www/user1/public/fake_dir
real_dir
为什么我在尝试访问时会得到 403 禁止访问,但在尝试访问时却没有?www.mydomain.com/fake_dir
www.mydomain.com/real_dir
这不应该是一个权限问题,因为当我在PHP中创建一个文件时,我可以正确地访问它。
我尝试在.htaccess中关闭和打开(它已打开),但没有运气。FollowSymlinks
难道在.htaccess文件中被定义为不可覆盖吗?或者,在 Apache 中使用符号链接时,还有其他需要注意的事项吗?FollowSymlinks
答:
必须将 Apache 配置为允许访问文件系统上的目录。这必须由系统管理员通过在 apache 配置文件 (httpd.conf) 中插入 <Directory> 指令来完成。
由于实际目录位于 Web 根目录内,因此它必须是可访问的,但可能尚未为目录启用 FollowSymLinks - 这也必须添加到 <Directory> 指令中。
查看 http://httpd.apache.org/docs/2.0/mod/core.html#directory
评论
FollowSymlinks
FollowSymlinks
.htaccess
这可能是 SELinux 安全问题。
cat /selinux/强制 如果值为 1,则将其设置为 0,然后重新启动 Apache。
评论
上一个:CSS的布局中立标签?
评论