Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann der direkte Zugriff auf Dateien verhindert werden, auf die über AJAX zugegriffen wird?

Wie kann der direkte Zugriff auf Dateien verhindert werden, auf die über AJAX zugegriffen wird?

DDD
Freigeben: 2024-11-18 00:19:02
Original
971 Leute haben es durchsucht

How to Prevent Direct Access to Files Accessed via AJAX?

So verhindern Sie den direkten Zugriff auf eine Datei, auf die über AJAX zugegriffen wird

Beim Erstellen von AJAX-Anfragen ist es von entscheidender Bedeutung, die Sicherheit der Daten zu gewährleisten übertragen wird. Wenn die Anforderungsmethode GET ist, können die Daten einfach durch Untersuchen der Anforderungsheader angezeigt werden. Obwohl die in der genannten Doppelfrage bereitgestellte Lösung das Problem nicht zu lösen scheint, gibt es einen alternativen Ansatz, der den direkten Zugriff auf die Zieldatei effektiv verhindern kann.

Lösung:

Um selektiv Zugriff auf AJAX-Anfragen zu gewähren und gleichzeitig den direkten Zugriff auf die Datei zu verweigern, können Sie die Servervariable HTTP_X_REQUESTED_WITH nutzen. Diese Variable wird von den meisten AJAX-Frameworks und -Bibliotheken auf XMLHttpRequest gesetzt. Mithilfe dieser Variable können Sie die folgende Prüfung innerhalb der PHP-Datei (z. B. func.php) implementieren:

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) {
    // Allow access since this is an AJAX request
} else {
    // Deny access since this is a direct request
}
Nach dem Login kopieren

Integration des Headers:

Um dies sicherzustellen Wenn Ihre AJAX-Anfrage den X-Requested-With-Header enthält, fügen Sie die folgende Zeile zu Ihrem JavaScript-Code hinzu, bevor Sie die senden Anfrage:

xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
Nach dem Login kopieren

Wirksamkeit:

Durch die Implementierung dieser Lösung schränken Sie effektiv den direkten Zugriff auf die Zieldatei ein und ermöglichen gleichzeitig AJAX-Anfragen von autorisierten Quellen. Dies trägt dazu bei, möglichen Datenmissbrauch oder Sicherheitsverletzungen zu verhindern.

Das obige ist der detaillierte Inhalt vonWie kann der direkte Zugriff auf Dateien verhindert werden, auf die über AJAX zugegriffen wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage