不允许使用符号链接或链接目标无法访问

时间:2015-06-02 11:53:02

标签: linux apache .htaccess

我的网络服务器上有一个文件夹,另一个用户的public_html有一个符号链接到这个文件夹。为了集中一些内容。

我可以完美地包含此符号链接文件夹中的文件。 但是,我无法直接访问文件(例如test.html或test.php)。

如果我尝试直接访问文件,我会在浏览器和我看到的日志文件中收到禁用错误:

  

不允许使用符号链接或链接目标无法访问

我试图编辑我在互联网上找到的httpconf,尝试将.htaccess放在符号链接所在的文件夹中等等。但到目前为止没有任何帮助。

其他信息: 我的网络服务器运行CentOS 6.5版(最终版) Apache 2.2.27

对链接文件夹的父文件夹的权限:777

链接文件夹的权限:777

我已将它们从644设置为777以进行测试

请注意我是一个遇到问题的程序员,而不是linux专家:)

***我仍然没有可行的解决方案。我可以通过包含它们来使用这些文件,就好了,不要直接调用任何文件,例如图像,样式表。我不知道提供哪些其他细节将有助于解决这个问题。 链接,文件夹和父文件夹的权限都可以 更改链接或文件夹的所有者也不会给出任何结果 选项中的.htaccess中的FollowSymLinks包含链接,该文件夹的父目录,目标文件夹和目标文件夹的父目录,它似乎没有任何帮助。 我可以不执行文件,真的需要

3 个答案:

答案 0 :(得分:7)

事实证明,符号链接本身需要由与原始链接文件夹相同的用户拥有

chown -R username: linkname

这对我有把戏

您可以使用

检查权限
 ls -la

然后看到实际用户拥有的所有文件看起来有点奇怪,除了原始用户拥有的符号链接。

希望这也可以帮助其他人解决类似问题!

答案 1 :(得分:1)

首先,我建议在您的问题中加入一些细节。例如。 dirs和文件的权限将是有用的,什么发行版等。

我的水晶球分析: - 您的web-server(apache)以用户www-data运行 - 你的php运行一个suexec用户A /用户b。 - www-data用户无法访问该文件,因为该文件或其父目录(!)上的www-data权限不足。

你可以这样做:

$ sudo -u www-data ls -lah /path/to/your/file

...看看你的网络服务器用户看到了什么。

$ ls -lah  /path/to/your/file

...检查,文件中设置了哪些权限。 (组/世界可读?)

$ ls -dlah  /path/to/your

...检查父目录的权限(需要x-www的数据),

HTH, 学家

答案 2 :(得分:0)

在Apache配置的users: function ($resource) { return $resource('http://localhost:8080/api/users').query().$promise; } 块中,或在<Directory>文件中:

.htaccess