Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich HTTPS-Verbindungen zuverlässig überprüfen, wenn $_SERVER['HTTPS'] unzuverlässig ist?

Wie kann ich HTTPS-Verbindungen zuverlässig überprüfen, wenn $_SERVER['HTTPS'] unzuverlässig ist?

Barbara Streisand
Freigeben: 2024-12-04 05:51:10
Original
308 Leute haben es durchsucht

How Can I Reliably Verify HTTPS Connections When $_SERVER['HTTPS'] Is Unreliable?

Überprüfen der HTTPS-Verbindung über $_SERVER['HTTPS'] hinaus

In Situationen, in denen $_SERVER['HTTPS'] undefiniert bleibt, was die herkömmliche Methode der Überprüfung auf HTTPS behindert Verbindungen ist ein alternativer Ansatz verfügbar.

Die folgende Funktion gewährleistet eine genaue Erkennung, unabhängig davon, ob $_SERVER['HTTPS'] existiert:

function isSecure() {
  return
    (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off')
    || $_SERVER['SERVER_PORT'] == 443;
}
Nach dem Login kopieren

Dieser Code funktioniert nahtlos mit IIS, wie in der PHP-Dokumentation und im Benutzerfeedback angegeben.

  • $_SERVER['HTTPS']: Diese Variable wird gesetzt, wenn Verbindung über HTTPS herstellen, aber in IIS werden möglicherweise unerwartete Werte wie „aus“ angezeigt.
  • $_SERVER['SERVER_PORT']: Normalerweise Port 443 wird mit sicheren Verbindungen in Verbindung gebracht und ist daher eine zuverlässige Fallback-Option.
  • Apache 1.x und andere Plattformen mit potenziellen Konfigurationsproblemen lassen möglicherweise die Variable $_SERVER['HTTPS'] weg, während die Überprüfung von Port 443 als dient Backup-Prüfung.

Beachten Sie, dass dieser Code in erster Linie die Verbindung zwischen dem Load Balancer untersucht, wenn ein Load Balancer zwischen dem Client und Ihrem Server vermittelt und Ihrem Server, nicht der Client-Load-Balancer-Verbindung.

Das obige ist der detaillierte Inhalt vonWie kann ich HTTPS-Verbindungen zuverlässig überprüfen, wenn $_SERVER['HTTPS'] unzuverlässig ist?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage