1 votes

Configuration de nginx 1.10.1 sur une machine virtuelle Debian 8.6 - Problème de bloc serveur (vhost)

Bonjour et salutations à tous. Tout d'abord, je vous remercie d'avoir pris le temps d'examiner ma question et d'y répondre éventuellement. C'est très apprécié.

Je suis en train de tout installer sur une nouvelle machine virtuelle (Google Cloud Computing) et j'essaie d'utiliser Debian, nginx, mariadb, php.

J'ai déjà réalisé ce type d'installation sur une machine virtuelle à plusieurs reprises, mais cette fois-ci, j'ai décidé d'obtenir la version la plus récente de nginx (1.10.1) plutôt que le paquet par défaut de Debian lorsque je tape apt-get install nginx sans mettre à jour la liste des sources. (Je crois qu'il s'agit de la version 1.6.3).

Bien que les différences entre les deux soient minimes, j'ai remarqué que cette version de nginx n'utilise pas les dossiers /sites-enabled/ et /sites-available/ pour les blocs de serveurs (Vhosts), elle va directement dans le dossier /etc/nginx/conf.d/. Pas de problème, me suis-je dit.

Le site sur lequel je travaille, organiplan dot com, affiche une page 404 non trouvée, bien que mon bloc serveur et mon fichier nginx.conf soient correctement configurés. Je vais inclure les deux ci-dessous.

Blocage du serveur

 server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

root /var/www/html/organiplan.com/public_html;
index index.php index.html index.htm;

server_name organiplan.com www.organiplan.com;

client_max_body_size 1024m;

location / {
try_files $uri $uri/ /index.php?q=$request_uri;
   }

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
    root /usr/share/nginx/html;
   }

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
   }
}

nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
worker_connections  1024;
}

http {
include       /etc/nginx/mime.types;
default_type  application/octet-stream;

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log  main;

sendfile        on;
#tcp_nopush     on;

keepalive_timeout  65;

#gzip  on;

include /etc/nginx/conf.d/*.conf;
}

Malgré la présence d'un fichier index.php et d'un fichier index.html dans le répertoire racine spécifié, le site continue d'afficher un message 404 non trouvé. Je sais que je dois manquer quelque chose de terriblement évident, mais je n'ai pas réussi à le comprendre. J'ai même effacé le serveur et tout réinstallé pour m'assurer que je n'avais pas fait une erreur que je n'avais pas remarquée et le résultat est le même.

Merci d'avance pour toute aide apportée. Je l'apprécie vraiment.

Editer

Désolé, je ne sais pas pourquoi je n'ai pas pensé à inclure les journaux d'erreurs dans le message initial. Ci-dessous vous trouverez le nginx error.log et le php5-fpm.log

nginx error.log

[error] 26954#26954: *86 open() "/usr/share/nginx/www/50x.html" failed (2:   No such file or directory), client: 66.249.64.66, server: organiplan.com,  request: "GET /tag/php/feed/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5- fpm.sock", host: "organiplan.com"
2016/09/21 00:21:27 [crit] 26954#26954: *89 connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream, client: 66.249.64.125, server: organiplan.com, request: "GET /tag/tag/feed/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "organiplan.com"
2016/09/21 00:21:27 [error] 26954#26954: *89 open() "/usr/share/nginx/www/50x.html" failed (2: No such file or directory), client: 66.249.64.125, server: organiplan.com, request: "GET /tag/tag/feed/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock", host: "organiplan.com"

php5-fpm.log

20-Sep-2016 17:33:41] NOTICE: configuration file /etc/php5/fpm/php-fpm.conf     test is successful

[20-Sep-2016 17:33:42] NOTICE: fpm is running, pid 22891
[20-Sep-2016 17:33:42] NOTICE: ready to handle connections
[20-Sep-2016 17:33:42] NOTICE: systemd monitor interval set to 10000ms
[20-Sep-2016 17:33:49] NOTICE: Terminating ...
[20-Sep-2016 17:33:49] NOTICE: exiting, bye-bye!
[20-Sep-2016 17:33:49] NOTICE: configuration file /etc/php5/fpm/php-fpm.conf          test is successful

[20-Sep-2016 17:33:49] NOTICE: fpm is running, pid 23151
[20-Sep-2016 17:33:49] NOTICE: ready to handle connections
[20-Sep-2016 17:33:49] NOTICE: systemd monitor interval set to 10000ms 
[20-Sep-2016 17:33:50] NOTICE: Terminating ...
[20-Sep-2016 17:33:50] NOTICE: exiting, bye-bye!
[20-Sep-2016 17:33:50] NOTICE: configuration file /etc/php5/fpm/php-fpm.conf test is successful

[20-Sep-2016 17:33:50] NOTICE: fpm is running, pid 23431
[20-Sep-2016 17:33:50] NOTICE: ready to handle connections
[20-Sep-2016 17:33:50] NOTICE: systemd monitor interval set to 10000ms

2voto

Tim Points 28848

Le journal des erreurs indique que les autorisations d'accès à PHP sont incorrectes. Corrigez cela et je pense que les choses commenceront à fonctionner, à condition qu'il n'y ait pas d'autres erreurs de configuration.

Nous vous suggérons de vérifier le chemin d'accès, les utilisateurs, les groupes et les autorisations pour le socket PHP. Est-il vraiment sur le chemin ci-dessous ? L'utilisateur sous lequel tourne Nginx a-t-il les permissions pour ce chemin ?

/var/run/php5-fpm.sock

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X