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

发布于 2024-11-18 03:29:39 字数 1007 浏览 3 评论 0原文

我有一些图形文件存在于托管 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

我将 apache 添加到 psacln 组,但这没有任何区别。

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

谢谢,

格雷格

I have some graphics files that exist within a directory that a web server is hosted from. I want to re-use those graphics files for another webservice.

I created a symbolic link as follows:

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

The gifs folder in question has the following permissions:

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

and a test file in there has this permission

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

So from the webservice I can view the file fine using http://www.windowsmobilesoft.net/gifs/noimage.gif

but if I use the webserver where the symbolic link is created I get a permission error

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

Forbidden

You don't have permission to access
/gifs/noimage.gif on this server.

Apache/2.2.3 (CentOS) Server at
www.pocketpcsoft.net Port 80

I added apache to the psacln group but this has not made any difference.

I suspect it's something really simple that I need to do, but I cannot think what that is, can anyone help?

Thanks,

Greg

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

‘画卷フ 2024-11-25 03:29:39

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

请参阅 选项 +符号链接

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

  • 使用硬链接(如果虚拟主机文档根将保留在同一文件系统上)
  • 使用重写规则将图像 URL 映射到文件
  • 使用别名将图像 URL 映射到文件
  • 只需复制该死的文件!

Its more likely that your apache instance is configured not to follow symbolic links than you have a permissions problem.

See options +symlinks

Note that allowing apache to read symlinks may introduce vulnerabilities in your application - better solutions are:

  • use hard links (if the vhost doc roots will stay on the same filesystem)
  • use rewrite rules to map the image URL to the file
  • use alias to map the image URL to the file
  • just copy the damn files!
殊姿 2024-11-25 03:29:39

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

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

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

go into the gifs folder on putty, and type: chmod 0755 noimage.gif

edit:
go on the folder that contains gifs folder on putty and type:
chmod 0755 gifs

then go into the folder and type:
chmod 0755 noimage.gif

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文