详解Nginx 13: Permission denied 解决方案

今天在用uwsgi+nginx在部署flask应用时,遇到502的错误,vim /var/log/nginx/error.log查看nginx的错误日志,提示如下错误信息:

2018/07/22 00:46:36 [crit] 15890#15890: *74 connect() to unix:/root/jianshuvue/jianshu.sock failed (13: Permission denied) while connecting to upstream, client: 120.42.13.98, server: jianshu.weiweiblog.cn, request: "GET /favicon.ico HTTP/1.1", upstream: "uwsgi://unix:/root/jianshuvue/jianshu.sock:", host: "jianshu.weiweiblog.cn", referrer: "http://jianshu.weiweiblog.cn/jianshu/67eb7ed414d3"

Permission denied,一看就知道是权限出了问题,通过ps -ef | grep nginx,查看nginx的进程信息:

root     15889     1  0 00:01 ?        00:00:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data 15890 15889  0 00:01 ?        00:00:00 nginx: worker process
root     16795 15654  0 00:48 pts/3    00:00:00 grep --color=auto nginx

发现nginx进程的用户是nginx,而我们创建/root/jianshuvue/jianshu.sock文件的用户是root,因此,只要把nginx的进程user改为root即可,vim /etc/nginx/nginx.conf:

# user www-data;
user root;
worker_processes auto;
pid /run/nginx.pid;

之后,/etc/init.d/nginx restart重启nginx,就可以正常访问网站了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持菜鸟教程(cainiaojc.com)。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。