POST-Daten in PHP mit .htaccess umleiten
Frage:
Können POST-Daten sein an eine gefälschte Adresse gesendet, die auf einen Index umleitet Seite?
Szenario:
Eine Website verwendet eine .htaccess-Datei, um alle Anfragen an index.php umzuleiten. Wenn Sie jedoch ein Formular mit der POST-Methode verwenden, um Daten an eine gefälschte Adresse zu senden, gehen die POST-Daten während der Umleitung verloren.
Analyse:
Der Standard-.htaccess Die in diesem Szenario verwendete Regel lautet:
RewriteRule send-mail index.php?send-mail [NC,L]
Diese Regel leitet die Anfrage korrekt an index.php um, aber das Flag [L] (last) stoppt weiter verarbeitet und verwirft alle POST-Daten.
Lösung:
Um POST-Daten während der Umleitung beizubehalten, ändern Sie das [L]-Flag in [P] (Proxy):
RewriteRule send-mail index.php?send-mail [NC,P]
Erklärung:
Das [P]-Flag verhält sich ähnlich wie [L] durch Stoppen der Regelverarbeitung, aber es weist auch das Proxy-Modul an, die Anfrage intakt zu verarbeiten, einschließlich aller POST-Daten.
Zusätzliche Hinweise:
# serve files and dirs if they exist please, otherwise send to index RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
Das obige ist der detaillierte Inhalt vonWie bleiben POST-Daten während der Umleitung in PHP mit .htaccess erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!