Variables d'environnement du shell à PHP
Résolu/Fermé
doc_mathieu
-
6 nov. 2008 à 14:15
asevere Messages postés 13095 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 - 7 nov. 2008 à 09:29
asevere Messages postés 13095 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 - 7 nov. 2008 à 09:29
A voir également:
- Php variable d'environnement
- Easy php - Télécharger - Divers Web & Internet
- Vba range avec variable ✓ - Forum VB / VBA
- Environnement de récupération introuvable ✓ - Forum Windows 8 / 8.1
- Retour a la ligne php ✓ - Forum PHP
2 réponses
asevere
Messages postés
13095
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
23 novembre 2024
426
6 nov. 2008 à 14:46
6 nov. 2008 à 14:46
Bonjour,
Tout me parait normal...
Les deux distrib doivent bien fonctionner, mais les variables $_ENV sont, comme leurs nom l'indique, des variables d'environnement, ce qui veut dire qu'elles étaient dans l'environnement de l'utilisateur qui a lancé apache quand il a lancé apache :-)
Pour rajouter une variable:
Ce qui doit différer entre les deux distrib, c'est le profil de l'utilisateur qui lance le serveur apache (fichier /etc/profile, ~/.profile ~/.bashrc, etc.)
A plus
Tout me parait normal...
Les deux distrib doivent bien fonctionner, mais les variables $_ENV sont, comme leurs nom l'indique, des variables d'environnement, ce qui veut dire qu'elles étaient dans l'environnement de l'utilisateur qui a lancé apache quand il a lancé apache :-)
Pour rajouter une variable:
$ export MA_VAR=valeur $ apachectl stop $ apachectl start
Ce qui doit différer entre les deux distrib, c'est le profil de l'utilisateur qui lance le serveur apache (fichier /etc/profile, ~/.profile ~/.bashrc, etc.)
A plus
Bonjour et merci de te pencher sur mon problème
le truc c'est que
$ export MA_VAR=valeur
$ apachectl stop
$ apachectl start
ne fonctionne pas puisque php ne considère pas cette variable comme une variable d'environnement php.
J'y ai bien accès depuis le shell : echo $MA_VAR retourne bien valeur mais dans mon php, avec phpinfo() je n'ai pas accès à la variable.
(avec un "export" depuis le serveur fonctionnel je n'ai pas de trace de MYSQL_USER ou MYSQL_SERVER)
Sinon j'ai regardé /etc/profile, ~/.profile ~/.bashrc sur les deux serveurs tout est identique
et apache a été redémarré depuis root sur les deux...
qu'en dis-tu ?
le truc c'est que
$ export MA_VAR=valeur
$ apachectl stop
$ apachectl start
ne fonctionne pas puisque php ne considère pas cette variable comme une variable d'environnement php.
J'y ai bien accès depuis le shell : echo $MA_VAR retourne bien valeur mais dans mon php, avec phpinfo() je n'ai pas accès à la variable.
(avec un "export" depuis le serveur fonctionnel je n'ai pas de trace de MYSQL_USER ou MYSQL_SERVER)
Sinon j'ai regardé /etc/profile, ~/.profile ~/.bashrc sur les deux serveurs tout est identique
et apache a été redémarré depuis root sur les deux...
qu'en dis-tu ?
asevere
Messages postés
13095
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
23 novembre 2024
426
6 nov. 2008 à 15:31
6 nov. 2008 à 15:31
Alors... il faut regarder dans la conf php:
Si safe_mode est à on, les seule variable qui seront passées sont celles dont le nom est préfixé par PHP_
ex:
Si safe_mode est à on, les seule variable qui seront passées sont celles dont le nom est préfixé par PHP_
ex:
$ export PHP_MAVAR $ apachectl stop $ apachectl start
asevere
Messages postés
13095
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
23 novembre 2024
426
6 nov. 2008 à 15:35
6 nov. 2008 à 15:35
Sinon, dans la même veine que ce que dit doglen, dans le script apachectl (which apachectl)
Tu as en début de script normalement, un fichier qui est recherché pour les variable d'environnement:
Chez moi:
Tu as en début de script normalement, un fichier qui est recherché pour les variable d'environnement:
Chez moi:
# pick up any necessary environment variables if test -f /usr/local/environments/env_01/httpd/bin/envvars; then . /usr/local/environments/env_01/httpd/bin/envvars fi
doc_mathieu
>
asevere
Messages postés
13095
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
23 novembre 2024
6 nov. 2008 à 15:41
6 nov. 2008 à 15:41
merci a vous deux pour votre aide
Doglen, j'ai regardé /etc/environement, c'est les même sur les deux serveurs, ils ne contiennent que la variable LANG (mais je vais essayer d'ajouter d'autre variables)
asevere, safe_mode est à OFF …sinon je regarde pour le script apachectl (je ne voi pas du tout ce que c'est) je vous tiens au courant
Doglen, j'ai regardé /etc/environement, c'est les même sur les deux serveurs, ils ne contiennent que la variable LANG (mais je vais essayer d'ajouter d'autre variables)
asevere, safe_mode est à OFF …sinon je regarde pour le script apachectl (je ne voi pas du tout ce que c'est) je vous tiens au courant
doc_mathieu
>
asevere
Messages postés
13095
Date d'inscription
lundi 28 janvier 2002
Statut
Webmaster
Dernière intervention
23 novembre 2024
6 nov. 2008 à 15:49
6 nov. 2008 à 15:49
Heuuu je suis pas un habitué de apache/php, c'est quoi ce apachectl stp ??