PHP получить доменное имя [дубликат]
Возможные Дубликаты:
HTTP_HOST и ИМЯ_СЕРВЕРА
Здравствуйте,
Я хочу получить доменное имя для того, где работает скрипт. Как это можно сделать с PHP?
Я вижу, что $_SERVER['HTTP_HOST'] а также $_SERVER['SERVER_NAME'] содержать эту информацию.
Будет ли эта переменная всегда работать, и я должен использовать один над другим?
спасибо.
2 ответов:
подобный вопрос был задан в stackoverflow раньше.
смотрите здесь: в PHP переменная $_SERVER['HTTP_HOST'] и в $_SERVER['server_name в'], Я правильно понимаю страницах человек?
также смотрите эту статью:http://shiflett.org/blog/2006/mar/server-name-versus-http-host
рекомендуется использовать HTTP_HOST, и возврат к ИМЯ_СЕРВЕРА только в том случае, если HTTP_HOST не был установлен. Он сказал, что ИМЯ_СЕРВЕРА может быть ненадежный на то сервер по разным причинам, в том числе:
- нет поддержки DNS
- неправильно
- за программным обеспечением балансировки нагрузки
чтобы ответить на ваш вопрос, они должны работать до тех пор, как:
- ваш HTTP-сервер передает эти значения вместе с PHP (я не знаю ни одного, что нет)
- ты не доступ к скрипту через командную строку (CLI)
мое личное предпочтение установите доменное имя в качестве переменной среды в виртуальном хосте apache2:
# Virtual host setEnv DOMAIN_NAME example.com// PHP echo getenv(DOMAIN_NAME);это, однако, не применимо во всех обстоятельствах.
Comments