2016-11-20 13 views
0

ich meine Rewrite-Regel wollen nur das erste Spiel zu fangen und den RestRewrite Spiel nur erste Vorkommen

Aktuelle Verhalten ignorieren

https://domain.com/oliver.stack => oliver 
https://domain.com/oliver.stackoliver.stack => oliver.stackoliver 

gewünschte Verhalten

https://domain.com/oliver.stack => oliver 
https://domain.com/oliver.stackoliver.stack => oliver 

Nginx Rewrite-Regel

location ~ .stack$ { 
     rewrite ^/(.*).stack$ /vid.php?v=$1; 
    } 

Antwort

1

stack$ entspricht "stack" am Ende der Zeile (endgültige $). Außerdem ist .* gierig: Es wird versuchen, die längste Zeichenfolge zu finden. .*? ist die nicht gierige Version:

rewrite ^/(.*?)\.stack /vid.php?v=$1; 
+0

Danke für die Erklärung – user2650277

Verwandte Themen