2016-11-03 6 views
0

Ich habe nginx auf einem Raspberry Pi. In /etc/nginx/sites-available/default habe ich server{} durch die folgenden ersetzt, und ich kann auf /var/www/html/index.php unter Verwendung http://192.168.1.210/ zugreifen.Nginx zu index.php umleiten

server { 
     listen 80; 
     server_name $domain_name; 
     root /var/www/html/; 
     index index.html index.htm; 
     access_log /var/log/nginx/access.log; 
     error_log /var/log/nginx/error.log; 

     location ~\.php$ { 
       fastcgi_pass unix:/var/run/php5-fpm.sock; 
       fastcgi_split_path_info ^(.+\.php)(/.*)$; 
       fastcgi_index index.php; 
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
       fastcgi_param HTTPS off; 
       try_files $uri =404; 
       include fastcgi_params; 
       # if (!-e $request_filename){ rewrite ^(.*)$ /index.php break; } 
     } 
} 

Ich möchte nun einige einfache Umleiten ähnlich wie Apache

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . index.php [L] 

Ich habe if (!-e $request_filename){ rewrite ^(.*)$ /index.php break; am Ende (siehe oben auf Kommentar Linie) und platziert http://192.168.1.210/page2 im Browser hinzufügen, aber das Skript leitet immer noch nicht um /var/www/html/index.php

Wie kann ich alle nicht vorhandenen Anforderungen an index.php umleiten?

Antwort

1

Was möchten Sie erreichen, um Dateien und Verzeichnisse umzuleiten, die nicht in Richtung index.php existieren?

try_files $uri $uri/ /index.php; 

Oder welche mehr Sinn macht:

Dies kann durch Verwendung erfolgen

error_page 404 /index.php; 

Dies wird umleiten auch Dateien, Bilder fehlen, ...

+0

ich zuvor versucht hatte, Ihre erste Lösung, jedoch gibt es den folgenden Fehler: 'Michael @ raspberrypi: ~ $ sudo /etc/init.d/nginx Neustart [....] Neustart nginx (über systemctl): nginx.serviceJob für nginx.service Scheitern ed. Siehe 'systemctl status nginx.service' und 'journalctl -xn' für Details. 'systemctl status nginx.service' zeigt einen Fehler, aber' journalctl -xn' zeigt nichts an. fehlgeschlagen! '. Ihre zweite Lösung verursacht keinen Fehler, leitet jedoch keine Umleitung ein. Danke – user1032531

+0

Du hast das try_files außerhalb der Location richtig platziert? – spa900

+0

Nein, aber seit dem. Perfekt! – user1032531

Verwandte Themen