Подтвердить что ты не робот

Есть ли простой способ получить ServerName в Symfony?

Я искал простой способ получить имя_сервера на компьютере, где Symfony работает в Symfony (так что приложение адаптируется, когда оно используется на хосте с другим именем сервера), но я не смог его найти. Я создал переменную в app.yml, и я ее получаю, но мне все еще интересно, нет ли более простого способа сделать это. Как вы это делаете? Я использую Symfony 1.2 и 1.4 для разных проектов.

4b9b3361

Ответ 1

Я думаю, что нашел что-то:

$this->getRequest()->getHost()

Кажется, что это сработает... он будет работать только там, конечно, есть запрос, поэтому он не универсален.

Ответ 2

Не очень приятно, но я использую $_SERVER["SERVER_NAME"] в своем файле переднего контроллера и использую его для определения среды, в которой я активирую:

$env = "prod";
if (preg_match("/qahost\.tld$/", $_SERVER["SERVER_NAME"]))
{
  $env = "qa";
}
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', $env, false);
sfContext::createInstance($configuration)->dispatch();

Мне было бы интересно увидеть подход правильный: -)