NginX pas l'exécution de PHP

J'ai été à travers des dizaines de solutions possibles à ce problème, mais ne peut pas trouver quelque chose qui fonctionne. En gros, les fichiers PHP ne sont pas en cours d'exécution sur mon NginX + PHP_fpm + Ubuntu 14 serveur. J'ai tous les paquets, et ils sont en cours d'exécution. J'ai effacé le cache du navigateur, etc., mais rien n'a fonctionné encore. J'apprécie toute l'aide!

De plein droit maintenant, si j'essaie d'accéder au fichier PHP, le sera de retour en tant que fichier HTML, mais ne va pas exécuter le script.

Voici mon nginx.fichier conf:

worker_processes 1;
worker_rlimit_nofile 8192;

events {
 worker_connections  3000;
}

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

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

   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;
   include /etc/nginx/sites-enabled/*;
}

Voici mon /sites-available/default fichier:

##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /usr/share/nginx/html;
# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;
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;
}
error_page 404 /404.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;
include snippets/fastcgi-php.conf;
# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
#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 {
#    deny all;
#}
}
# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/and symlink that
# to sites-enabled/to enable it.
#
#server {
#    listen 80;
#    listen [::]:80;
#
#    server_name example.com;
#
#    root /var/www/example.com;
#    index index.html;
#
#    location /{
#        try_files $uri $uri/=404;
#    }
#}

Voici mon serveur de fichier conf:

server {
listen 8000 default_server;
listen [::]:8000 default_server ipv6only=on;
root /var/www/html;
#index index.php index.html index.htm;
#location /{
#index index.php index.html index.htm;
#}
}

Comme vous pouvez le voir, j'ai été jouer avec ces fichiers. Mais en vain.

  • Qu'est-ce que votre erreur de log (/var/log/nginx/erreur.journal) dire? Vous pouvez grep cgi /var/log/nginx/erreur.journal et voir ce qui en sort. Je parie que vous allez trouver votre réponse là-bas.
  • Rien ne pénètre dans le journal des erreurs lorsque j'essaie de charger un fichier php.
  • Quelle est l'URL que vous demandez?
  • localhost:8000/info.php
  • Il n'y a pas de ~ \.php$ emplacement de bloc pour le serveur écoute sur le port 8000. Vous devez l'ajouter.
InformationsquelleAutor Shahid Ahmad | 2016-05-18