Page 1 sur 1

développer avec 2 sites en local

Posté : 29 nov. 2015, 20:43
par laurents
Bonjour,

je développe un site en local (Wampserver) avant de le mettre en production ; en local, j'ai 2 sites : un site de travail et un site de démo. Je mets à jour le site de démo avec le contenu du site de travail, uniquement quand celui-ci contient une version "montrable".
Pour gérer facilement l'existence de plusieurs sites, j'ai un fichier de config que j'inclue dans mes différentes pages :
config.php :
<?php
// -----------------------------------------------------------
// CONFIGURATION : 
// -----------------------------------------------------------
if(!defined('SITE_URL_WWW'))	define('SITE_URL_WWW',	'localhost/site_travail');  // en TEST LOCAL, A REMPLACER PAR...
//if(!defined('SITE_URL_WWW'))	define('SITE_URL_WWW',	'www.mon-site-en-ligne.com'); // en PRODUCTION
if( !defined('SITE_URL_HTTP'))	define('SITE_URL_HTTP',	'http://'.SITE_URL_WWW);
?>

L'inclusion est faite de cette façon-là :
include $_SERVER['ROOT'].'\site_travail\config\config.php';
Quand je mets à jour le site de démo, il faut donc modifier cette ligne d'inclusion :
include $_SERVER['ROOT'].'\site_demo\config\config.php';
Cela est rébarbatif et source d'erreur car la plupart de mes fichiers de code sont concernés. Je souhaiterais donc trouver une méthode de gestion de ces 2 sites plus simple ; peut-on m'aider ?

Re: développer avec 2 sites en local

Posté : 29 nov. 2015, 21:08
par @rthur
Bonjour,

Tu pourrais faire un test sur la variable $_SERVER["HTTP_HOST"] pour définir automatiquement tes variables suivant que tu es en test (localhost) ou en prod (!= localhost)

Re: développer avec 2 sites en local

Posté : 01 déc. 2015, 00:41
par laurentschmitt
Je ne vois que ce soir qu'on m'a répondu car je comptais sur une notification qui n'a pas eu lieu. Entre temps, j'ai obtenu une solution mais comme c'est un peu long à expliquer, je ne la donnerai que si on me la demande...

Re: développer avec 2 sites en local

Posté : 01 déc. 2015, 10:15
par Mazarini
Tu peux éventuellement utiliser include_path dans le définition de ton vhost pour avoir 2 répertoires d'include différent et faire :

Code : Tout sélectionner

include config\config.php';
Il te suffit de mettre soit site_demo, soit site_travail dans l'include_path (avec le chemin complet).

A noter que include_path peut également être modifié dans un .htaccess
Voir : http://php.net/manual/fr/configuration.changes.php