Installer Symfony sur Centos

, par  admin

L’installation du célèbre Framework Symfony peut s’avérer fastidieuse. C’est pourquoi je vous propose ce petit tutoriel afin de solutionner les éventuelles erreurs liées au processus d’installation.

Prérequis :

Un serveur Centos configuré avec apache et Mysql.
PHP installé avec les modules optionnels suivants

Installation d’un accélérateur PHP (Recommandé) :

Installation :

Installez le composer (bibliothèque de gestion de dépendance PHP) [1]

Placez vous dans le dossier /var/www/symfony, vous devriez obtenir une liste de fichiers et dossiers ressemblant à cela :

Modifiez les autorisations :

Vérifiez que la configuration de votre système est prête à accueillir Symfony :
Dans le répertoire Symfony, lancez simplement :

Réglez ensuite les éventuels problèmes explicités, comme par exemple le timezone du fichier php.ini :

Ajoutez la ligne :
date.timezone = Europe/Paris
ou encore la mise à jour des vendors (Vendor libraries must be installed). Ajouter la ligne dans le fichier composer.json ou créer le s’il n’existe pas :

{
   "require": {
       "symfony/finder": "2.3.*"
   }
}

Relancez le check :

On vide les caches :

Dans le cas d’une configuration de type virtual hosts, il suffit d’ajouter le vhost suivant à la fin de votre fichier /etc/httpd/conf/httpd.conf

N’oubliez pas de redémarrer apache :

Il est temps de tester l’url http://urldusite/config.php
Il est possible d’obtenir l’erreur This script is only accessible from localhost.
Pour corriger cette erreur, modifiez le fichier script.php dans le répertoire /web de symfony en y ajoutant l’IP publique de l’ordinateur à partir duquel vous essayez de vous connecter :

if (!in_array(@$_SERVER['REMOTE_ADDR'], array(
   '127.0.0.1',
   '::1',
   'Mon adresse IP'
))) {
   header('HTTP/1.0 403 Forbidden');
   exit('This script is only accessible from localhost.');
}

Ajoutez également votre IP dans le fichier de configuration http://urldusite/app_dev.php

if (isset($_SERVER['HTTP_CLIENT_IP'])
   || isset($_SERVER['HTTP_X_FORWARDED_FOR'])
   || !(in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', 'fe80::1', '::1', 'MON_IP')) || php_sapi_name() === 'cli-server')
) {
   header('HTTP/1.0 403 Forbidden');

Réessayer l’url...Miracle ça fonctionne !
PNG

Poursuivez la configuration en cliquant sur Configure your Symfony Application online sur l’url http://urldusite/config.php. Pour la base de donnée, il peut être nécessaire de la créer avant de lancer cet assistant.
PNG

[1la commande php composer.phar install fonctionne également

Un peu de théorie... Tous les cours théoriques