Wie erhalte ich die vollständige URL der aktuellen Seite in PHP?
Hallo zusammen! Ich bin ein PHP-Anfänger und habe ein Problem. Ich muss die vollständige URL der aktuellen Seite abrufen, einschließlich Protokoll (http oder https), Domain, Pfad und aller GET-Parameter. Ich habe mehrere Methoden ausprobiert, aber jedes Mal läuft etwas schief.
Ich habe `$_SERVER['REQUEST_URI']` verwendet – es gibt nur den Pfad zurück, z.B. `/page.php?id=5`, ohne Domain und Protokoll. Und `$_SERVER['HTTP_HOST']` gibt nur die Domain, z.B. `example.com`. Wenn ich sie einfach mit `echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI"];` zusammenklebe, wird bei HTTPS das falsche Protokoll verwendet – es bleibt `http://`.
Außerdem habe ich bemerkt, dass `$_SERVER['HTTPS']` manchmal nicht definiert ist, besonders auf lokalen Servern. Und ob die Seite mit `www` oder ohne `www` geöffnet wird, hat auch einen Einfluss. Plus, einige Hosting-Anbieter verwenden Ports, z.B. `localhost:8080`, die berücksichtigt werden müssen.
Kurz gesagt, ich bin verwirrt. Könnt ihr mir sagen, wie man die vollständige URL in PHP korrekt und zuverlässig zusammenstellt, damit sie in jeder Situation funktioniert?