我无法在 Linux 上使用 PHP 上传文件

问题描述 投票:0回答:1

我在 RedHat 8.7 上运行 PHP 8.2.9、Apache 2.4.37 (Red Hat Enterprise Linux)。

不知何故,我无法将文件上传到我的项目下的特定文件夹。

This this the folder where the project is running /opt/policy_editor/www/html
drwxr-xr-x.  2 apache apache   62 Mar  2 14:51 depreceated_files
drwxr-xr-x.  2 apache apache 4096 Mar 13 15:39 img
drwxr-xr-x. 11 apache apache 4096 Aug  4 10:04 inc
-rw-r--r--.  1 apache apache 8646 Aug  4 09:49 index.php
-rw-r--r--.  1 apache apache   19 Mar  2 14:51 info.php
-rw-r--r--.  1 apache apache 5401 Jul 28 09:38 login.php
-rw-r--r--.  1 apache apache  101 Mar  2 14:51 logout.php
-rw-r--r--.  1 apache apache  395 Mar  2 14:51 mail.php
-rw-r--r--.  1 apache apache 1485 Mar 13 15:39 maintenance.php
drwxr-xr-x.  2 apache apache 4096 Jul 28 09:38 sql_updates
drwxrwxrwx.  2 apache apache    6 Aug  4 10:11 tmp
drwxrwxrwx.  2 apache apache    6 Aug  4 09:47 uploads

我拥有所有正确的权限,但仍然无法将文件移动到上传。 我已确认上传文件保存在系统文件夹的 /tmp 中

但是我收到这些错误

警告:move_uploaded_file(uploads/test.pol):无法打开流:第487行/opt/policy_editor/www/html/inc/admin/admin_post_commands.php中的权限被拒绝

警告:move_uploaded_file():无法将第 487 行 /opt/policy_editor/www/html/inc/admin/admin_post_commands.php 中的“/tmp/phpV2j8Vv”移动到“uploads/test.pol”

我在这个频道上似乎有类似的错误,大多数解决方案都指向更改权限。 除非我遗漏了什么,否则许可似乎不适合我。 我也尝试过将应用程序移动到 /var/www 下,但我遇到了同样的问题。

php apache
1个回答
0
投票

您似乎对相对和绝对文件路径有疑问。

使用绝对路径和

进行测试
__DIR__ . "folder/file.ext";
© www.soinside.com 2019 - 2024. All rights reserved.