PHP wird als beliebte serverseitige Programmiersprache häufig zum Erstellen von Webanwendungen verwendet. Bei der Entwicklung von Webanwendungen mit PHP ist es sehr wichtig, die Sicherheit zu gewährleisten. Da HTTP-Anfragen zwei Typen umfassen: GET und POST, und da die GET-Anfrage die vom Client gesendeten Anforderungsparameter in der URL enthält, kann die Sicherheit der Webanwendung durch das Verbot der GET-Anfrage erhöht werden. In diesem Artikel besprechen wir, wie man GET-Anfragen über PHP unterdrückt.
Schritt eins: Anfragetyp abfragen
Beim Schreiben eines PHP-Skripts können wir den Parameter $_SERVER['REQUEST_METHOD'] verwenden, um den Typ der aktuellen Anfrage zu bestimmen. Wenn es sich um eine GET-Anfrage handelt, ist der Wert dieses Parameters „GET“, wenn es sich um eine POST-Anfrage handelt, ist sein Wert „POST“. Daher können wir am Anfang des Codes die folgende Beurteilungsaussage hinzufügen:
if ($_SERVER['REQUEST_METHOD'] == 'GET') { header('HTTP/1.1 405 Method Not Allowed'); exit; }
Dieser Code fragt zunächst ab, ob der Typ der aktuellen Anfrage GET ist. Wenn ja, wird der Fehler „HTTP/1.1 405 Method Not Allowed“ zurückgegeben Code und stoppen Sie die Implementierung des Skripts.
Schritt 2: Deaktivieren Sie das $_GET-Array
In PHP ist $_GET ein assoziatives Array, das die in der Anforderungs-URL übergebenen Parameter enthält. Um böswillige GET-Anfragen zu verhindern, können wir die Funktion unset() am Anfang des Skripts verwenden, um das Array $_GET auf ein leeres Array zu setzen:
$_GET = array();
Dadurch wird das Array $_GET deaktiviert und niemand kann Parameter in der URL übergeben .
Schritt 3: Verwenden Sie $_POST anstelle von $_GET
In PHP können wir das $_POST-Array verwenden, um die Daten in der POST-Anfrage zu speichern. Wenn wir Daten an eine PHP-Seite senden müssen und nicht möchten, dass sie über eine GET-Anfrage zugänglich sind, können wir eine POST-Anfrage anstelle einer GET-Anfrage verwenden.
Wenn Sie beispielsweise zuvor Parameter in der URL verwendet haben, um Suchschlüsselwörter zu übergeben, können Sie jetzt stattdessen ein ausgeblendetes Feld verwenden:
<form method="post" action="search.php"> <input type="text" name="keyword"> <input type="submit" value="Search"> </form>
In diesem Beispiel wird eine POST-Anfrage anstelle einer GET-Anfrage verwendet, um die Suchanfrage zu stellen. Verwenden Sie auf PHP-Seiten $_POST['keyword'], um Suchschlüsselwörter abzurufen, anstatt $_GET['keyword'] zu verwenden.
Zusammenfassend lässt sich sagen, dass das Deaktivieren von GET-Anfragen eine wirksame Möglichkeit ist, die Sicherheit von Webanwendungen zu erhöhen. Durch die oben genannten drei Schritte können wir wirksam verhindern, dass böswillige Benutzer GET-Anfragen verwenden, um unsere Anwendungen anzugreifen.
Das obige ist der detaillierte Inhalt vonSo deaktivieren Sie die Get-Anfrage mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!