首页 > linux日常,服务器相关 > nginx提示:500 Internal Server Error错误的解决方法

nginx提示:500 Internal Server Error错误的解决方法

自己的开发机是debian7 ,装了nginx, php5 , mysql。 前两天因为跟分区还剩不到2g空间,就调整了下跟分区, 调整后mkdir了home目录。把备份的资料拷贝了回来。

今天service nginx start没问题 , service php5-fpm start也没问题(我nginx中设置www文件夹位置位于自己家目录里www)

可是当我打开浏览器访问127.0.0.1的时候,nginx提示:500 Internal Server Error错误。 ps aux | grep 了一下,发现nginx和php在进程里都正常运行。 于是去 var/log目录 cat 了 nginx的error log , 发现其中错误提示为:

failed (13: Permission denied), client:

于是,这个问题转化为权限问题,

首先尝试 chmod 777 www , 错误提示依旧。

通过ps aux发现 nginx和php的 user都是 www-data
尝试 chown chgrp www , 错误依旧
尝试修改 /etc/nginx/nginx.conf 里面的user www-data 为 user 我的家目录用户名
错误提示消失,静态html文件访问无碍, php文件访问错误依旧 , 猜想原因是由于php的user为www-data , 但是由于www目录权限已经为777, 。。。绞尽脑汁。

转换思路:

由于调整分区前后, nginx及php的设置都没有变过,之前运行无碍, 之后500错误。 那么问题就出现在调整前后重建的家目录权限上。 于是跳到www外层查看用户名家目录,发现其权限为700. 于是chmod 为 755.

问题解决。

总结: 500错误根据nginx log 及为权限问题, 记得查看文档所在位置路径上所有目录的权限。

参考链接: http: //stackoverflow. com/questions/25774999/nginx-stat-failed-13-permission-denied
http: //blog. csdn. net/watsy/article/details/10010009

上一篇: redhat解释gpasswd与usermod区别

下一篇: linux stat命令参数详解