2012-04-03 26 views
2

Ich kann nicht Nginx lesen PHP-Code eingebettet in HTML-Dateien für ein bestimmtes Verzeichnis (html/test). Ich laufe CentOS 6 und habe FastCGI installiert. Ich habe mehrere Konfigurationen ausprobiert, aber nichts macht den Job. Mein nginx.conf sieht wie folgt aus:NGINX - Mapping HTML-Dateien zu PHP

worker_processes 1; 

events { 
    worker_connections 1024; 
} 


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

    sendfile  on; 


    keepalive_timeout 65; 

    server { 

     server_name www.domain.com; 
     rewrite ^(.*) http://domain.com$1 permanent; 


    } 
    server { 
     listen 80; 
     server_name shop-munk.com *.shop-munk.com; 


     location/{ 
      root /opt/html; 
      index index.html index.htm index.php; 
     } 

     error_page 500 502 503 504 /50x.html; 
     location = /50x.html { 
      root /opt/html; 
     } 


     location ~ \.php$ { 
      root   opt/html; 
      fastcgi_pass 127.0.0.1:9000; 
      fastcgi_index index.php; 
      fastcgi_param SCRIPT_FILENAME /$fastcgi_script_name; 
      include  fastcgi_params; 
     } 

    location ~ \.html$ { 
      root   opt/html/test; 
      fastcgi_pass 127.0.0.1:9000; 
      fastcgi_index index.html; 
      fastcgi_param SCRIPT_FILENAME /$fastcgi_script_name; 
      include  fastcgi_params; 
    } 


    } 


} 

Antwort

0

Ich habe versucht, das Gleiche zu tun und Server zurückgegeben „403 Forbidden“ für Skripte ohne Endung .php. Folgende PHP-FPM-Konfiguration behoben das Problem:

security.limit_extensions = .php .html