|||
【问题标题】:move_uploaded_file 给出“无法打开流:权限被拒绝”错误(move_uploaded_file gives "failed to open stream: Permission denied" error)
【问题描述】:
在 CentOS 上尝试使用 Apache 2.2 和 PHP 5.3 配置上传目录时,我不断收到此错误。
在 php.ini 中:
upload_tmp_dir = /var/www/html/mysite/tmp_file_upload/
在 httpd.conf 中:
<Directory /var/www/html/mysite/tmp_file_upload/> Options -Indexes AllowOverride None Order allow,deny Allow from all </Directory> <Directory /var/www/html/mysite/images/> Options -Indexes </Directory>
CentOS 目录权限:
drwxrwxr-x 2 root root 4096 Nov 11 10:01 imagesdrwxr-xr-x 2 root root 4096 Nov 12 04:54 tmp_file_upload
无论我做什么,当我上传文件时,我总是从 PHP 收到这个错误:
警告:move_uploaded_file(images/robot.jpg):无法打开流:第 78 行 /var/www/html/mysite/process.php 中的权限被拒绝
警告:move_uploaded_file(): Unable to move '/tmp/phpsKD2Qm' to 'images/robot.jpg' in /var/www/html/mysite/process.php on line 78
我已经尝试了上面所有的解决方案,但是以下解决了我的问题
chcon -R -t httpd_sys_rw_content_t your_file_directory
【问题讨论】:
如果启用了 【问题讨论】: 这对我有用。 然后注销或重新启动。SELinux
,就会发生这种情况。通过设置SELINUX=disabled
在/etc/selinux/config
中禁用它并重新启动服务器。textpop-up
sudo adduser <username> www-datasudo chown -R www-data:www-data /var/wwwsudo chmod -R g+rwX /var/www
原文:https://www.likecs.com/ask-2413205.html
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-2 17:50
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社