Est-il un moyen facile d'obtenir le ServerName Symfony?
Question
je cherche un moyen facile d'obtenir le ServerName de la machine où Symfony fonctionne en Symfony (pour que mon application adapte lorsqu'il est utilisé sur un hôte avec un autre ServerName), mais je ne pouvais pas trouver un. J'ai créé une variable dans app.yml et je vient le chercher, mais je me demande encore s'il n'y a pas moyen plus facile de le faire. Comment faites-vous cela? J'utilise Symfony 1.2 et 1.4 sur les différents projets.
La solution
Je pense que je trouve quelque chose:
$this->getRequest()->getHost()
Cela semble fonctionner ... il ne fonctionnera que là est une demande bien sûr, il est donc pas universel.
Autres conseils
Pas très agréable, mais je l'utilise $_SERVER["SERVER_NAME"]
dans mon dossier de contrôleur frontal, et l'utiliser pour déterminer l'environnement j'activer:
$env = "prod";
if (preg_match("/qahost\.tld$/", $_SERVER["SERVER_NAME"]))
{
$env = "qa";
}
$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', $env, false);
sfContext::createInstance($configuration)->dispatch();
Je serais curieux de voir la bon approche: -)