PHP / Apache:链接图形文件的权限设置

时间:2011-06-30 11:25:02

标签: php apache file-permissions

我有一些图形文件存在于托管Web服务器的目录中。我想将这些图形文件重新用于另一个Web服务。

我创建了一个符号链接,如下所示:

lrwxrwxrwx  1 root    root      51 Jun 30 03:47 gifs -> /var/www/vhosts/webservice/httpdocs/gifs

有问题的gifs文件夹具有以下权限:

drwxr-xr-x  6 user2 psacln    4096 Jun  1 07:02 gifs

并且其中的测试文件具有此权限

-rw-r--r--  1 user1   psacln    1663 Jun 10 09:27 noimage.gif

因此,从网络服务我可以使用http://www.windowsmobilesoft.net/gifs/noimage.gif

查看文件

但如果我使用创建符号链接的网络服务器,我会收到权限错误

http://www.pocketpcsoft.net/gifs/noimage.gif

  

禁止

     

您无权访问   这台服务器上的/gifs/noimage.gif。

     

Apache / 2.2.3(CentOS)服务器   www.pocketpcsoft.net 80号港口

我在psacln组中添加了apache,但这没有任何区别。

我怀疑这是我需要做的非常简单的事情,但是我想不出那是什么,有人可以帮忙吗?

谢谢,

格雷格

2 个答案:

答案 0 :(得分:0)

进入putty上的gifs文件夹,然后输入: chmod 0755 noimage.gif

编辑: 转到putty上包含gifs文件夹的文件夹并输入: chmod 0755 gifs

然后进入文件夹并输入: chmod 0755 noimage.gif

答案 1 :(得分:0)

您的apache实例更有可能配置为不遵循符号链接,而不是您有权限问题。

请参阅options +symlinks

请注意,允许apache读取符号链接可能会引入vulnerabilities in your application - 更好的解决方案是:

  • 使用硬链接(如果vhost doc根目录将保留在同一文件系统中)
  • 使用重写规则将图片网址映射到文件
  • 使用别名将图片网址映射到文件
  • 只是复制该死的文件!