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?
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
Du hast das try_files außerhalb der Location richtig platziert? – spa900
Nein, aber seit dem. Perfekt! – user1032531