【发布时间】:2023-04-02 07:18:02
【问题描述】:
我正在尝试将文件上传到 Redhat 服务器,但出现此错误:
无法打开流:/var/www/html 中的权限被拒绝
我修改了所有文件夹中的许可证,但它仍然不起作用。谁能指导我?
如果我在 localhost 中运行我的应用程序,它可以工作,但在服务器中它就无法工作。
我正在使用:Redhat v7,PHP 版本 5.4.16,wamp 版本 2.2
我已经修改了 php.ini 和 httpd.conf,就像我阅读的另一个答案一样,但没有结果。
【问题讨论】:
-
你是否在文件夹上设置了 777 进行测试(我知道设置 777 不好,但我只是在问)我在 Ubuntu Server 上遇到了同样的问题,我唯一的解决方案是移动/etc/上的文件
-
您需要始终提供绝对路径而不是相对路径。所以请确保它看起来像
move_uploaded_file(__DIR__ . '/path')而不是move_uploaded_file('/path') -
为清晰起见重新措辞。
-
发生错误是因为它无法读取上传的文件还是因为它无法写入目标?此问题是否仅在
move_uploaded_file()中出现,还是在其他操作中出现(touch()、file_get_contents())?是否设置了open_basedir或safe_mode? php/apache 用户(和组)是否与文件/目录所有者相同?suEXEC/suPHP是否会影响它(对他们不是很熟悉,所以我不知道他们是否可以)?
标签: php apache redhat permission-denied