nginx.служба: не удалось прочитать PID из файла / run / nginx.пид: недопустимый аргумент
Я работаю через https://www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-uwsgi-and-nginx-on-ubuntu-16-04 - ... Я завершил tut, но я получаю ошибку 502.
мой файл конфигурации блока сервера nginx:
server {
listen 80;
server_name 198..xxx.xxx.xxx mysite.org;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/deploy/mysite3;
}
location / {
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/mysite3.sock;
}
}
deploy@server:/etc/nginx/sites-enabled$ sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2017-02-06 17:30:53 EST; 4s ago
Process: 7374 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
Process: 7383 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 7380 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 7384 (nginx)
CGroup: /system.slice/nginx.service
├─7384 nginx: master process /usr/sbin/nginx -g daemon on; master_process on
└─7385 nginx: worker process
Feb 06 17:30:53 server systemd[1]: Starting A high performance web server and a reverse proxy server...
Feb 06 17:30:53 server systemd[1]: nginx.service: Failed to read PID from file /run/nginx.pid: Invalid argument
Feb 06 17:30:53 server systemd[1]: Started A high performance web server and a reverse proxy server.
журнал ошибок nginx показывает:
2017/02/06 21:10:32 [error] 7385#7385: *15 upstream prematurely closed connection while reading response header from upstream, client: 64.xxx.xxx.xxx, server: 198.xxx.xxx.xxx, request: "GET / HTTP/1.1", upstream: "uwsgi://unix:/run/uwsgi/mysite3.sock:", host: "mysite.org"
мне кажется, что uwsgi работает нормально:
Feb 06 17:43:42 server uwsgi[7434]: WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0xc7ac10 pid: 7435 (default app)
Feb 06 17:43:42 server uwsgi[7434]: *** uWSGI is running in multiple interpreter mode ***
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI master process (pid: 7435)
Feb 06 17:43:42 server uwsgi[7434]: Mon Feb 6 17:43:42 2017 - [emperor] vassal mysite3.ini has been spawned
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI worker 1 (pid: 7439, cores: 1)
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI worker 2 (pid: 7440, cores: 1)
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI worker 3 (pid: 7441, cores: 1)
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI worker 4 (pid: 7442, cores: 1)
Feb 06 17:43:42 server uwsgi[7434]: spawned uWSGI worker 5 (pid: 7443, cores: 1)
Feb 06 17:43:42 server uwsgi[7434]: Mon Feb 6 17:43:42 2017 - [emperor] vassal mysite3.ini is ready to accept requests
как я могу это исправить?
edit:
root@server:~# mkdir /etc/systemd/system/nginx.service.d
root@server:~# printf "[Service]nExecStartPost=/bin/sleep 0.1n" > /etc/systemd/system/nginx.service.d/override.conf
root@server:~# systemctl daemon-reload
root@server:~# systemctl restart nginx
root@server:~# systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
Drop-In: /etc/systemd/system/nginx.service.d
└─override.conf
Active: active (running) since Tue 2017-02-07 08:18:26 EST; 6s ago
Process: 10076 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5
Process: 10084 ExecStartPost=/bin/sleep 0.1 (code=exited, status=0/SUCCESS)
Process: 10082 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (cod
Process: 10079 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process
Main PID: 10083 (nginx)
CGroup: /system.slice/nginx.service
├─10083 nginx: master process /usr/sbin/nginx -g daemon on; master_pr
└─10085 nginx: worker process
Feb 07 08:18:26 server systemd[1]: Starting A high performance web server and a
Feb 07 08:18:26 server systemd[1]: Started A high performance web server and a r
root@server:~#
1 ответов
это предупреждение с nginx.PID-файл-это ошибка (по крайней мере для Ubutnu, если не для других дистрибутивах). Подробнее здесь: https://bugs.launchpad.net/ubuntu / + источник/nginx/ + ошибка/1581864
обходной путь (на консоли ssh, как root, используйте команды ниже):
mkdir /etc/systemd/system/nginx.service.d
printf "[Service]\nExecStartPost=/bin/sleep 0.1\n" > /etc/systemd/system/nginx.service.d/override.conf
systemctl daemon-reload
systemctl restart nginx
затем проверьте, видите ли вы все еще nginx.ошибка pid, а также если nginx действительно работает, и если вы можете подключиться к порту 80 на вашем сервере.
Я бы также проверил, если это на самом деле существует и разрешения на него:
/run/uwsgi/mysite3.sock
Если nginx работает и uWSGI работает, а затем я думаю, что это проблема конфигурации
Я понимаю, что вы хотите использовать Django, поэтому я бы рекомендовал рассмотреть вашу фактическую конфигурацию и сравнить ее с той, что здесь:
http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html
надеюсь, это поможет!