A voir également:
- Mutualisation de sites sur un serveur local
- Téléchargez cette archive (dossier compressé). en extraire tous les fichiers dans un dossier local. quel fichier contient l’expression trouverpix ? ✓ - Forum Windows
- Appdata local - Guide
- Prix d'un appel local - Forum Mobile
- Il est en cours de transport vers votre site de livraison ✓ - Forum Consommation et internet
- Votre colis est dans le site de livraison qui dessert votre adresse. nous le préparons pour le mettre en livraison. ✓ - Forum Consommation et internet
3 réponses
l_epais
Messages postés
140
Date d'inscription
vendredi 24 août 2007
Statut
Membre
Dernière intervention
12 août 2010
31
8 juin 2008 à 14:46
8 juin 2008 à 14:46
Je comprend pas tres bien ton problème... tu cherche a faire des chemin relatifs dans tes fichiers php? ou tu veux conditionner ton php.ini.
tu peux me donner un exemple de ce que tu modifie. Et expliquer pourquoi tu dois faire ces modif
tu peux me donner un exemple de ce que tu modifie. Et expliquer pourquoi tu dois faire ces modif
J'aurais encore dû mieux préciser :
Puisque j'ai dit que les fichiers (php comme les autres) du site devaient être identiques en local et chez l'hébergeur, c'est bien évidemment les fichiers de configuration d'Apache (httpd.conf) et de Php (php.ini) de mon serveur local que je souhaite modifier...
Puisque j'ai dit que les fichiers (php comme les autres) du site devaient être identiques en local et chez l'hébergeur, c'est bien évidemment les fichiers de configuration d'Apache (httpd.conf) et de Php (php.ini) de mon serveur local que je souhaite modifier...
l_epais
Messages postés
140
Date d'inscription
vendredi 24 août 2007
Statut
Membre
Dernière intervention
12 août 2010
31
8 juin 2008 à 15:23
8 juin 2008 à 15:23
C'est pas aussi evident que ce que tu semble croire. avec $_SERVER['PHP_SELF'] tu retrouve le path de ton fichier qu'il soit en local ou chez ton hebergeur. en combinant avec dirname et autre basename tu retrouve facilement le nom du fichier l'url ou l'arborescence.
si ton prbleme c'est d'avoir ton path d'include tu creer dans un fichier à la racine du repertoire du site, que t'appelle config.php (par exemple) et que tu inclus partout avec include_once. Une CONSTANTE definie comme: $INCLUDE = $_SERVER['PHP_SELF'].'/include'; ou mieu une constante $chemin_racine_de_mon_site = $_SERVER['PHP_SELF'].
Que tu sois en local en staging en prod ou chez free t'aurra un chemin relatif
Si c'est pas ce que tu cherche a faire, et que tu veux vraiment modifier tes fichiers de config, j'ai besoin de precision sur ce que tu as besoin exactement: fais un copier coller des lignes que tu dois modifier en ce moment avant et après les avoir modifier. Mais avant de faire ça assure toi que t'as le controle sur les fichiers chez l'hebergeur.
si ton prbleme c'est d'avoir ton path d'include tu creer dans un fichier à la racine du repertoire du site, que t'appelle config.php (par exemple) et que tu inclus partout avec include_once. Une CONSTANTE definie comme: $INCLUDE = $_SERVER['PHP_SELF'].'/include'; ou mieu une constante $chemin_racine_de_mon_site = $_SERVER['PHP_SELF'].
Que tu sois en local en staging en prod ou chez free t'aurra un chemin relatif
Si c'est pas ce que tu cherche a faire, et que tu veux vraiment modifier tes fichiers de config, j'ai besoin de precision sur ce que tu as besoin exactement: fais un copier coller des lignes que tu dois modifier en ce moment avant et après les avoir modifier. Mais avant de faire ça assure toi que t'as le controle sur les fichiers chez l'hebergeur.
Je répète :
LES FICHIERS DU SITE (tels que présents chez l'hébergeur) NE DOIVENT PAS ÊTRE MODIFIÉS.
Il s'agit de configurer LE SERVEUR LOCAL (Apache et Php) pour que ces fichiers tournent également sur ce serveur local.
Actuellement c'est le cas, mais pour un seul à la fois. Quand je change de site (répertoire racine différent), il faut reconfigurer Apache et PHP pour coller aux nouveaux chemins.
Je sais qu'il est possible d'héberger plusieurs sites simultanément sur un même serveur, mais je ne sais pas comment configurer Apache et Php pour le faire.
Il n'est pas question de modifier la config chez l'hébergeur, c'est celle de mon serveur local qu'il faut adapter.
Voici un extrait des lignes de config qu'il faut que je modifie à chaque fois que je veux changer de site (il faut décommenter la ligne du site concerné et commenter les autres) :
httpd.conf:
#DocumentRoot "D:\Selvos\SiteDistant"
DocumentRoot "D:\PremRenov"
.....
#<Directory "D:\Selvos\SiteDistant">
<Directory "D:\PremRenov">
.....
php.inif:
;include_path = "D:\Selvos\SiteDistant\include;.;${path}\php\pear\"
include_path = "D:\PremRenov\include;.;${path}\php\pear\"
.....
Et il y en a peut-être d'autres...
Il doit bien y avoir un mécanisme pour adapter ces lignes automatiquement en fonction du nom du site appelé ou du port adressé. J'ai trois sites chez Online sur le même serveur et cela fonctionne très bien.
Y-a-t'il un pro de l'installation de serveurs web dans la salle ?
LES FICHIERS DU SITE (tels que présents chez l'hébergeur) NE DOIVENT PAS ÊTRE MODIFIÉS.
Il s'agit de configurer LE SERVEUR LOCAL (Apache et Php) pour que ces fichiers tournent également sur ce serveur local.
Actuellement c'est le cas, mais pour un seul à la fois. Quand je change de site (répertoire racine différent), il faut reconfigurer Apache et PHP pour coller aux nouveaux chemins.
Je sais qu'il est possible d'héberger plusieurs sites simultanément sur un même serveur, mais je ne sais pas comment configurer Apache et Php pour le faire.
Il n'est pas question de modifier la config chez l'hébergeur, c'est celle de mon serveur local qu'il faut adapter.
Voici un extrait des lignes de config qu'il faut que je modifie à chaque fois que je veux changer de site (il faut décommenter la ligne du site concerné et commenter les autres) :
httpd.conf:
#DocumentRoot "D:\Selvos\SiteDistant"
DocumentRoot "D:\PremRenov"
.....
#<Directory "D:\Selvos\SiteDistant">
<Directory "D:\PremRenov">
.....
php.inif:
;include_path = "D:\Selvos\SiteDistant\include;.;${path}\php\pear\"
include_path = "D:\PremRenov\include;.;${path}\php\pear\"
.....
Et il y en a peut-être d'autres...
Il doit bien y avoir un mécanisme pour adapter ces lignes automatiquement en fonction du nom du site appelé ou du port adressé. J'ai trois sites chez Online sur le même serveur et cela fonctionne très bien.
Y-a-t'il un pro de l'installation de serveurs web dans la salle ?
Bon, je me suis débrouillé tout seul...
Pour ceux que cela intéresse, la réponse est à
https://apache.developpez.com/cours/virtual-host/
Comme le problème du include_path n'est pas traité (à ce jour) dans le tutoriel, j'ai contacté l'auteur qui m'a répondu ceci :
cela est possible si et seulement si PHP fonctionne comme module Apache (et non en CGI). Il vous est alors possible de redéfinir, depuis le fichier de configuration d'Apache, pour chaque virtualhost, un certain nombre de paramètres PHP (voir sa documentation pour de plus amples détails : https://www.php.net/manual/fr/ini.php à l'aide de la directive php_admin_value ou php_admin_flag (cette dernière est destinée exclusivement aux valeurs de type booléenne ; la précédente au reste).
Donc dans votre cas (et si vous remplissez le pré-requis indiqué), vous pourriez procéder de la sorte pour redéfinir l'include_path pour chacun des virtualhosts :
php_admin_value include_path ".:/home/siteX/www/offline/libs"
Grand merci à lui !
Pour ceux que cela intéresse, la réponse est à
https://apache.developpez.com/cours/virtual-host/
Comme le problème du include_path n'est pas traité (à ce jour) dans le tutoriel, j'ai contacté l'auteur qui m'a répondu ceci :
cela est possible si et seulement si PHP fonctionne comme module Apache (et non en CGI). Il vous est alors possible de redéfinir, depuis le fichier de configuration d'Apache, pour chaque virtualhost, un certain nombre de paramètres PHP (voir sa documentation pour de plus amples détails : https://www.php.net/manual/fr/ini.php à l'aide de la directive php_admin_value ou php_admin_flag (cette dernière est destinée exclusivement aux valeurs de type booléenne ; la précédente au reste).
Donc dans votre cas (et si vous remplissez le pré-requis indiqué), vous pourriez procéder de la sorte pour redéfinir l'include_path pour chacun des virtualhosts :
php_admin_value include_path ".:/home/siteX/www/offline/libs"
Grand merci à lui !
8 juin 2008 à 14:54