web-dev-qa-db-fra.com

Nginx et php5-fpm ne fonctionnent pas

avant tout, j'ai cherché partout et tout testé mais ne fonctionne toujours pas. J'ai installé php5-fpm et nginx quand j'ouvre localhost dans le navigateur. Je vois cette page:

Bienvenue à Nginx!

il est donc en train de configurer php5-fpm avec nginx:

/etc/php5/fpm/pool.d/www.conf

  user = www-data
  group = www-data
  listen = /var/run/php5-fpm.sock
  listen.owner = www-data
  listen.group = www-data
  pm = dynamic
  pm.max_children = 5
  pm.start_servers = 2
  pm.min_spare_servers = 1
  pm.max_spare_servers = 3
  chdir = /

toutes les autres lignes sont commentées et voici la conf de nginx:

  upstream php {
        server unix:/var/run/php5-fpm.socket;
  }

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

root /usr/share/nginx/html;
index index.html index.htm index.php;

# Make site accessible from http://localhost/
server_name localhost;

location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    try_files $uri $uri/ =404;
    # Uncomment to enable naxsi on this location
    # include /etc/nginx/naxsi.rules
}

# Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
#location /RequestDenied {
#   proxy_pass http://127.0.0.1:8080;    
#}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#
#error_page 500 502 503 504 /50x.html;
#location = /50x.html {
#   root /usr/share/nginx/html;
#}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;

}

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
#   allow all;
#}
}

le problème est quand j'essaie d'exécuter des fichiers php nginx téléchargera un fichier php au lieu de l'exécuter

3
k961

Autorisations de socket PHP-FPM

Veuillez vérifier que le socket dispose des autorisations appropriées.

$ ll /var/run/php5-fpm.sock
srw-rw---- 1 www-data www-data 0 Aug  6 14:16 /var/run/php5-fpm.sock=

Ajoutez probablement listen.mode = 0660 à votre www.conf si le résultat est différent.

Peut-être lié: échec de la connexion de Nginx à php5-fpm.sock (13: autorisation refusée)

configuration nginx

  1. Est-ce vraiment où sont vos fichiers?

    root /usr/share/nginx/html;
    index index.html index.htm index.php;
    
  2. Qu'est-ce que ce bloc est censé faire?

      upstream php {
            server unix:/var/run/php5-fpm.socket;
      }
    
  3. Je suggère de supprimer try_files $uri =404; du bloc location ~ \.php$.

  4. Pourquoi l'indentation des lignes en 2 et 3 est-elle différente des autres? Notez que cela affecterait une configuration correcte, mais cela laisse l'impression qu'ils ont été collés ensemble sans précaution. Veuillez fournir un lien vers les instructions que vous avez utilisées.

4
LiveWireBT

Vous pouvez essayer EasyEngine qui permet de configurer le serveur Web avec une seule commande

Docs/wiki: https://github.com/rtCamp/easyengine/wiki

Comment configurer: http://www.unixmen.com/easyengine-auto-installer-script-managing-wordpress-nginx-websites-ubuntu-debian/

0
Mitesh Shah