【问题标题】:GCP PHP Move Uploaded File doesn't worksGCP PHP移动上传的文件不起作用
【发布时间】:2019-03-11 11:59:19
【问题描述】:

我在 GCP 上使用 CentOS v7 上的 vm 实例。 move_uploaded_file应该很容易使用,但是我的权限被拒绝了

[Mon Mar 11 11:47:57.298785 2019] [php7:warn] [pid 22024] [client ***] PHP Warning:  move_uploaded_file(/var/www/html/web-apps/images/menu/19692265_b8533716-e201-49fe-916e-ae993c89fffb_500_500.jpg): failed to open stream: Permission denied in /var/www/html/web-apps/back_end/editMenu.php on line 21, referer: http://***/web-apps/pages/activity/editMenu.php?id=18
[Mon Mar 11 11:47:57.298834 2019] [php7:warn] [pid 22024] [client ***] PHP Warning:  move_uploaded_file(): Unable to move '/tmp/php79PbIY' to '/var/www/html/web-apps/images/menu/19692265_b8533716-e201-49fe-916e-ae993c89fffb_500_500.jpg' in /var/www/html/web-apps/back_end/editMenu.php on line 21, referer: http://***/web-apps/pages/activity/editMenu.php?id=18

我正在尝试

  1. chown -R apache:apache web-apps/
  2. chmod -R 755 网络应用

这里是ls -l

drwxr-xr-x.  3 apache apache    188 Mar 11 09:18 images

ps -aux | grep httpd 用于 PID 22024

apache   22024  0.0  0.3 611668 14348 ?        S    10:23   0:00 /usr/sbin/httpd -DFOREGROUND

运行下面的脚本

<?php echo exec('whoami'); ?>

和结果 apache

/tmp文件夹

drwxrwxrwt.  13 apache apache 4096 Mar 11 11:56 tmp

我在这里错过了什么?是否可能与在 GCP 上运行的安全策略有关?

【问题讨论】:

  • 我认为,您应该将www-data 的所有权授予您的目录,并具有写入权限,
  • @harishsharma www-data 不适用于 centOs 环境

标签: php apache google-cloud-platform virtual-machine


【解决方案1】:

经过一番摸索,问题出在 SElinux 上。

CentOS 6 以上应该是SELinux enable enforcing

setenforce Permissive

检查状态

sestatus

参考https://wiki.centos.org/HowTos/SELinux

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-11
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多