php - Nginx - 无法打开流 : Permission denied in/var/www/example. com

标签 php nginx amazon-ec2

我的网站在 nginx + php-fpm 上运行并且运行良好但是在上传文件时它显示空白页面。我的日志文件显示

2016/06/08 14:44:40 [error] 22063#22063: *25 FastCGI sent in stderr: "PHP message: PHP Warning:  file_put_contents(up/propic/medium/5961465411480.jpg): failed to open stream: Permission denied in /var/www/example.com/saveimg.php on line 32" while reading response header from upstream, client:...

我尝试了 stackoverflow 的大部分答案,即使我将/var/www 文件夹权限更改为 777,但结果是一样的。

关于我的服务器的一些细节

/etc/php-fpm.d

 user=nginx
 group=nginx

/var/www/sites 的所有权和所属组

drwxrwxrwx. 29 ec2-user root 4096 Jun  8 14:39 site1.com

最佳答案

经过搜索,我找到了。都是涉及到SELINUX的安全特性。 使用 ls -Z 时

drwxrwxrwx. ec2-user root system_u:object_r:httpd_sys_content_t:s0 www

将此更改为

drwxrwxrwx. ec2-user root system_u:object_r:httpd_sys_rw_content_t:s0 www

使用命令

chcon -R -t httpd_sys_rw_content_t /var/www

关于php - Nginx - 无法打开流 : Permission denied in/var/www/example. com,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37710979/

相关文章:

amazon-web-services - 带有 Nginx 和 PHP-FPM 的 AWS EC2 - 不能将 CPU 推到 50% 以上

amazon-web-services - 多区域 ec2 实例复制

php - 使用 php 在 netsuite 中实现 Oauth

php - 将 'max number of client reached' redis 错误消息更改为 ''

XML 上的 php xpath

django - 添加另一个 Django 站点会破坏现有的 SSL Django 站点

php 数组 foreach 循环

javascript - Nginx 和 Node.js 服务器 - 多个任务

amazon-web-services - 移动 SSL crt 文件后不再能够通过 SSH 访问 AWS

c# - Amazon ec2 API 版本 2 签名编码与 c#