Heim >Backend-Entwicklung >PHP-Tutorial >Wie erhält RewriteCond mehrere Parameter in pseudostatischen Regeln?
Folgende Formularregeln stehen zur Verfügung:
/index.php?m=search&c=index&s=1&t=1&k=Keywords
Ich möchte den Pfad zu
/search?s= pseudo- weiterleiten statische Form 1&t=1&k=Keywords
Mit der folgenden Methode können Sie nur einen Parameterwert abrufen
RewriteCond %{QUERY_STRING} ^k=(. )$
RewriteRule ^search$ /index.php?m=search&c=index...&k =% 1
Wenn Sie die folgende Methode verwenden, um mehrere Parameter zu erhalten, ist die Reihenfolge der Parameter festgelegt. Sobald die Reihenfolge geändert wird, funktioniert es nicht. . )&c=(. )$
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1&s=%2&c=%3
RewriteRule ^search$ /index.php?m=search&c=index [L,QSA]
Antwortinhalt:
/index.php?m=search&c=index&s=1&t=1&k=Keywords
Ich möchte den Pfad zu
/search?s= pseudostatisch weiterleiten Formular 1&t=1&k=Keywords
RewriteCond %{QUERY_STRING} ^k=(. )$
RewriteRule ^search$ /index.php?m=search&c=index...&k =% 1
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1&s=%2&c=%3
Die Verwendung der folgenden Methode birgt Sicherheitsrisiken und die Anzahl der Parameter kann nicht begrenzt werden
Bitte fragen Sie die Experten nach guten Lösungen?
verwendet weiterhin Parameter wie
k
als reguläre Übereinstimmungen, wie zum Beispiel: s
c