2016-03-18 11 views
0

Ich versuche nginx die Rewrite zum Ändern Urls wienginx Rewrite-Regel haben ergeben nicht

<domain>/index.php?mode=a/b 

zu

<domain>/a/b 

aber meine attemps haben führen nicht zu verwenden.

location/{ 
    rewrite ^(.*)$ index.php?mode=$1 break; 
    } 

Was ist los damit?

Antwort

0

Es gibt mehrere Probleme:

  • Alle nginx URIs haben ein führender / (im Gegensatz zu Apache)
  • Die .php Datei in einem anderen Ort verarbeitet wird (vermutlich location ~ \.php$, und daher sollte die break ersetzt werden mit last

Versuchen Sie folgendes:

location/{ 
    rewrite ^/(.*)$ /index.php?mode=$1 last; 
} 

Weitere Informationen finden Sie unter this document.