2017-12-06 6 views
-2

Ich möchte alle Anfragen mit meinem index.php mit Ausnahme der Anforderungen an eine img, css oder js Datei verweisen zu handhaben (gif | jpg | png | svg | ico | css | js).Nginx Rewrite spezielle Datei

Auf Apache meine Rewrite-Regeln und Bedingungen waren:

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_URI} !\.(gif|jpg|png|svg|ico|css|js)$ 
RewriteRule ^(.*)$ index.php [QSA] 

Und das funktionierte perfekt in Ordnung. Aber jetzt möchte ich meine Nginx vhost-Konfiguration einfach so konfigurieren. Wie kann ich das erreichen?

Antwort

1

Was:

location ~ .(gif|jpg|png|svg|ico|css|js)$ { 
    return 301 http://$http_host$request_uri 
} 

location/{ 
    rewrite ^(.*)$ /index.php; 
} 
+1

@SebAslian: bitte den Umfang Ihrer Q in den Kommentaren nicht verlängern. Überdenken Sie Ihr Q und aktualisieren Sie dann den Körper Ihres Q. Sie können sagen: "Bitte sehen Sie aktualisierten Q, weil ...:." als Kommentar zu dieser Antwort. Viel Glück. – shellter

0

Lösung:

rewrite \/(?!\S+(?:jpe?g|png|bmp|gif))\S+ /index.php last;