Je travaille à travers Comment servir Django Applications avec uWSGI et Nginx sur Ubuntu 16.04 .
J'ai terminé le tut et redémarré à la fois Nginx et Uwsgi. Je remarque que si je vais à l'adresse IP de mon serveur, je vois mon site (ce qui me fait penser que Uwsgi fonctionne correctement). Cependant, si je vais à www.mysite.com
, j'obtiens l'erreur 502. Mon fichier de configuration nginx dans le /etc/nginx/sites-available
est mysite
contient:
server {
listen 80;
server_name mysite.com www.mysite.com;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/deploy/mysite;
}
location / {
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/mysite.sock;
}
Qu'est-ce que je fais mal?
$ systemctl status uwsgi
Failed to connect to bus: No such file or directory
Je suis confus, je sais que je travaille sur un certain nombre de fichiers uwsgi et
$ Sudo systemctl start uwsgi
ne provoque pas d'erreur. De plus, le site Web est toujours en cours d’adresse IP. Je pensais que Uwsgi faisait ça.
$ netstat -a|grep uwsgi
unix 2 [ ACC ] STREAM LISTENING 2373238691 /run/uwsgi/mysite.sock
L'erreur 502 Bad Gateway signifie que le serveur ne reçoit pas une réponse correcte d'un autre serveur. Dans votre cas, il s'agit du serveur uWSGI
. Il ne fonctionne pas ou est arrêté en raison d'une erreur.
Vérifiez l'état du serveur uWSGI à l'aide de Sudo systemctl status uwsgi
.
Dans php7, www-conf est dans: /etc/php/7.0/fpm/pool.d
Dans ce fichier, je trouve ceci:
; Note: This value is mandatory.
listen = /run/php/php7.0-fpm.sock
; Set listen(2) backlog.
J'ai défini un paramètre dans /etc/nginx/sites-available/[site]
upstream php-handler {
#server 127.0.0.1:9000;
server unix:/run/php/php7.0-fpm.sock;
}
Et ça marche :)