更新:我看到与/ tmp目录相关的问题,以及提到的将注释从/ home移出的注释。 它没有解决这个问题。
(在post底部的附加更新)
我有一个azure色的Ubuntu 16.04虚拟机我正在使用主机使用uwsgi作为服务器和nginx作为反向代理的烧瓶应用程序,按照本指南…
https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-16-04
问题是我得到一个502错误的网关,当我尝试连接到服务器的IP在端口80上的Web浏览器。当我检查日志,它说,Nginx无法find我在configuration文件中指定的Unix套接字。
错误是…
2016/08/29 23:23:20 [crit] 2792#2792: *120 connect() to unix:///home/me/appname/appname/appname.sock failed (2: No such file or directory) while connecting to upstream, client: ip.goes.in.here, server: here.goes.the.ip, request: "GET /favicon.ico HTTP/1.1", upstream: "uwsgi://unix:///home/me/appname/appname/appname.sock:", host: "the.ip.goes.here", referrer: "http://all.of.teh.ips/"
我的服务器块看起来像这样…
server { listen 80; server_name ip.address.goes.here; location / { include uwsgi_params; uwsgi_pass unix:/etc/appname.sock; } }
我的app.ini文件看起来像这样…
[uwsgi] module:wsgi:app master = true processes = 5 socket = /etc/appname.sock chmod-socket = 660 vacuum = true die-on-term = true
我的.service文件看起来像这样…
[Unit] Description=UWSGI instance to serve app After=network.target [Service] User=me Group=www-data WorkingDirectory=/home/me/appname ExecStart=/home/me/appnam/uwsgi --ini appname.ini [Install] WantedBy=multi-user.target
我也有一个安装脚本 ,执行以下操作(可能导致重复日志的问题?)
sudo ufw allow 'Nginx Full' export FLASK_APP=appname.py export APPNAME_SETTINGS=app_settings.cfg sudo cp service/appname.service /etc/systemd/system/appname.service sudo cp nginxServerBlock/appname /etc/nginx/sites-available/ sudo ln -s /etc/nginx/sites-available/appname /etc/nginx/sites-enabled sudo nginx -t #this tests for syntax errors sudo systemctl start appname sudo systemctl enable appname
我在unix之后,在家之前(现在等,dir被改变了),改变了其中的一些其他东西,我看到在各种指南中有所不同。
我尝试通过更改.ini文件和服务器块中指定的位置来移动套接字 ,但错误完全不变 ,所以nginx似乎正在查找同一目录中的套接字。
目录nginx正在searchfind的套接字不在我的configuration的任何地方。
[UPDATE]我发现var / log / nginx目录中有重复的日志 , 8个access.log 副本和8个error.log副本 。 每次更改之后,我一直在运行安装脚本(在使用git进行更改之后将文件移动到合适的位置),并使用守护程序重新加载(我不记得确切的名称)设置脚本…可以在我的脚本中导致重复? 难道我有可能用不同的服务偶然地做了一些奇怪的重复设置,每个都使用了一对不同的日志文件?
如何修改为
uwsgi_pass unix:/home/me/appname/appname/appname.sock;
User=me Group=www-data WorkingDirectory=/home/me/appname ExecStart=/home/me/appnam/uwsgi --ini appname.ini
这看起来像一个错字(appnam)。
你确定服务器正在运行? 你能和socat联系吗?