为啥我的文件夹对网络不可见?或可上传?

Posted

技术标签:

【中文标题】为啥我的文件夹对网络不可见?或可上传?【英文标题】:Why is my folder not being visible to the web? or upload-able?为什么我的文件夹对网络不可见?或可上传? 【发布时间】:2011-08-18 18:01:14 【问题描述】:

出于某种奇怪的原因,我无法再访问我的图像文件夹中的图像或其任何内容https://ksc105.kscserver.com/images/list.png 或https://ksc105.kscserver.com/images/bold.png。我最初无法将文件上传到图像并尝试使用 chmod a=rw /var/www/images 但这没有帮助。我还将 php5 升级到最新的 ubuntu 版本。我可以做些什么来解决这个问题,我可以做些什么来解决我的上传问题?

当前图像不显示,因为我收到 403 错误:

禁止

您无权访问此服务器上的 /images/bold.png。 Apache 服务器位于 [..].com 端口 443

上传给我:

警告:move_uploaded_file(/[..].png):无法打开流:第 37 行 [..]/images.php 中的权限被拒绝

警告:move_uploaded_file(): Unable to move '/var/tmp/[...].png' to '/var/www/images/nzoom.png' in [..]/images.php on line 37

[..] 只是我去掉了无用的变量。

Ubuntu 9 上的 Apache 2 上的 PHP 5。

【问题讨论】:

@Tanner 这是一个糟糕的建议,就像说“让你的门窗全开来避免你的锁出现问题” @James:我不知道确切的 chmod,但我只是建议进行测试,以确保您的脚本没有任何问题。 @Tanner 已经解决了!谢谢你!我用 chmod 757 * 【参考方案1】:

我怀疑你弄乱了目录的权限。你可能想做:

# chmod 757 /var/www/images
# chmod 644 /var/www/images/*.*

允许nobody/apache 网络服务器用户访问它们

【讨论】:

是的,它起作用了......但我仍然收到此错误警告:move_uploaded_file(images/zoom_ksc.png):无法打开流:/var/www/images.php 中的权限被拒绝第 41 行警告:move_uploaded_file(): Unable to move '/tmp/phpjLc1Po' to 'images/zoom_ksc.png' in /var/www/images.php on line 41 如果幸运的话,您将与 apache 服务器在同一个组中,因此请先尝试将目录更改为 775,如果失败,请改用 757 现在关注我一周前提出的另一个问题!【参考方案2】:

这可能是最肯定的权限相关。我建议你 chmod 你的:

文件0644(或0666,如果 Apache 没有以相同的 [FTP] 用户身份运行) directories0755(或 0777,如果 Apache 不是以同一个 [FTP] 用户身份运行)

这样它们将始终是可执行的,并且您在脚本中拥有进一步的写入权限。

【讨论】:

我认为那里有一个错字。你的第一个 777 应该是 755 @James:是的,确实修复了!谢谢。 =)

以上是关于为啥我的文件夹对网络不可见?或可上传?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 Swift 类的扩展在定义文件之外不可见?

为啥代码隐藏文件在 VB.NET Web 应用程序项目中不可见?

C++/CLI 为啥对托管不可见

Virtualenv 与此系统或可执行文件不兼容

为啥我的wordpress总是能上传所有类型文件?

我的wordpress里上传图片为啥显示成功,但是无法显示?