Ich möchte den Domänennamen für den Ort erhalten, an dem das Skript ausgeführt wird. Wie kann das mit PHP gemacht werden? Ich sehe das $_SERVER['HTTP_HOST'] ebenso gut wie $_SERVER['SERVER_NAME'] enthalten diese Informationen. Wird diese Variable immer funktionieren und sollte ich eine über der anderen verwenden?
Vielen Dank.
Das beantwortet einen Teil meiner Frage zur Verwendung von SERVER_NAME gegenüber dem anderen, aber ist dies der richtige Weg, dies in PHP zu tun? (ist der andere Teil) Danke.
– Francisc
23. März 2011 um 11:57 Uhr
Mukesh Chapagain
Eine ähnliche Frage wurde bereits in Stackoverflow gestellt.
Siehe hier: PHP $_SERVER[‘HTTP_HOST’] im Vergleich zu $_SERVER[‘SERVER_NAME’]verstehe ich die Manpages richtig?
Es wird empfohlen, HTTP_HOST zu verwenden und nur dann auf SERVER_NAME zurückzugreifen, wenn HTTP_HOST nicht festgelegt wurde. Er sagte, dass SERVER_NAME auf dem Server aus verschiedenen Gründen unzuverlässig sein könnte, darunter:
HTTP_HOST scheint mir richtig zu sein. SERVER_NAME hat gut funktioniert, bis wir anfingen, Docker zu verwenden, und uns dann einfach “localhost” gegeben haben. Beachten Sie nur, dass HTTP_HOST Ihnen auch die Subdomain mitteilt.
– Herbst Leonard
15. Februar 2017 um 20:13 Uhr
xzyfer
Um Ihre Frage zu beantworten, sollten diese funktionieren, solange:
Ihr HTTP-Server gibt diese Werte an PHP weiter (ich kenne keine, die dies nicht tun)
Du bist nicht Zugriff auf das Skript über die Befehlszeile (CLI)
Aber wenn ich mich richtig erinnere, können diese Werte teilweise gefälscht sein, also verlässt man sich am besten nicht darauf.
Das beantwortet einen Teil meiner Frage zur Verwendung von SERVER_NAME gegenüber dem anderen, aber ist dies der richtige Weg, dies in PHP zu tun? (ist der andere Teil) Danke.
– Francisc
23. März 2011 um 11:57 Uhr