Précédent   Forum des professionnels en informatique > Systèmes > Windows > IIS
IIS Forum d'entraide serveur Web IIS (Internet Information Services)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/06/2006, 12h02   #1
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 87
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : avril 2003
Messages : 87
Points : 25
Points : 25
Par défaut [IIS-ASP&PHP-Mutlihoming] pb de chemin currentDir ?!?

Bonjour à tous,

J’ai un problème concernant les fonctions PHP (et sûrement d’autre en relation avec les chemins) :
- fileExist() ;
- gestCWD() ;
- include() ;
- realpath() ;


En effet, mon serveur WEB est configuré comme suivant :
(Il servait à la base que pour de l’interprétation ASP mais l’interprétation du PHP via le filtre ISAPI php5isapi.dll a été ajouté [ Ma procédure d’installation ressemble beaucoup à celle de la page http://odelmotte.developpez.com/tuto.../iis6phpmysql/ écrite par un membre de developpez.com ] ) :
- IIS6 ;
- PHP5.0.3 ;
- MySQL4.1.7 ;
- Et PhpMyAdmin 2.6.1

Chacun de mes sites PHP et ASP est déclaré en tant que ‘nouveau site Web’ où j’ai ajouté pour chacun le filtre ISAPI pour ceux en PHP.


J’ai actuellement 5 sites PHP, ils fonctionnent globalement bien sauf :
- Si un fichier ajouté par un include() porte le même nom par exemple formulaire.php dans 2 sites différents, par exemple, on pourra se retrouver avec le fichier de l’autre site ! (donc actuellement, j’ai forcé les fichiers du même noms avec un préfixe propre au site, de ce fait, la bonne page est toujours chargée ?!?)
- La fonction fileExist() ne marche pas j’ai l’impression jamais alors que nous l’avons bien autorisé en exécution et allowUrlFOpen est bien à ‘on’ dans le phpinfo(); et j’ai aussi remarqué que realpath() ; ne retourne rien (chaine vide).
-Impossible de se servir de PhpMyAdmin, les erreurs suivantes apparaissent :
Citation:
Warning: main(./libraries/grab_globals.lib.php) [function.main]: failed to open stream: No such file or directory in X:\mon-rep-de-stockage-des-sites\PhpMyAdmin\index.php on line 8

Fatal error: main() [function.require]: Failed opening required './libraries/grab_globals.lib.php' (include_path='.;C:\php5\pear') in X:\mon-rep-de-stockage-des-sites\PhpMyAdmin\index.php on line 8

Le problème, je pense, est donc que le chemin courant est mal défini, voici quelques indices/recherche de mon côté :

Via phpinfo(), j’ai bien les bons chemins, je pense :
Citation:
[PHP CORE]
allow_url_fopen | On | On
include_path |.;C:\php5\pear |.;C:\php5\pear
(valeur par défaut non défini dans le php.ini, ce répertoire n’existe pas sur mon serveur)

[ISAPI]
PATH_TRANSLATED | X:\mon-rep-de-stockage-des-sites\mon-site\index.php
SERVER_NAME | www.mon-site.fr
APPL_PHYSICAL_PATH | X:\mon-rep-de-stockage-des-sites\mon-site\

[PHP VARIABLES]
_SERVER["PATH_TRANSLATED"] | X:\mon-rep-de-stockage-des-sites\mon-site
_SERVER["SERVER_NAME"] | www.mon-site.fr
_SERVER["APPL_PHYSICAL_PATH"] | X:\mon-rep-de-stockage-des-sites\mon-site\
_SERVER["DOCUMENT_ROOT"] | X:\mon-rep-de-stockage-des-sites\mon-site
_SERVER["ALL_HTTP"] |HTTP_CACHE_CONTROL:max-age=0 HTTP_CONNECTION:keep-alive HTTP_KEEP_ALIVE:300 HTTP_ACCEPT:text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 HTTP_ACCEPT_CHARSET:ISO-8859-1,utf-8;q=0.7,*;q=0.7 HTTP_ACCEPT_ENCODING:gzip,deflate HTTP_ACCEPT_LANGUAGE:fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3 HTTP_HOST:www.mon-site.fr HTTP_USER_AGENT:Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4
Par contre, avec un fichier whereamI.php à la racine du site, j’ai la chose suivante bien étrange ! :
Voici 2 copies des valeurs affichées après rafraîchissements !
Citation:
- 1er appel au fichier :
$mosConfig_absolute_path = 'c:\windows\system32\inetsrv'; | obtenu par $mosConfig_absolute_path = getcwd();

SERVER_NAME : www.mon-site.fr |obtenu par $_SERVER['SERVER_NAME'];
http://www.mon-site.fr/whereami.php | obtenu par precedent + $_SERVER['PHP_SELF']

- après quelques rafraîchissements :
$mosConfig_absolute_path = 'X:\mon-rep-de-stockage-des-sites\mon-AUTRE-site\commun\page'; | obtenu par [$mosConfig_absolute_path = getcwd();]

SERVER_NAME : www.mon-site.fr | obtenu par $_SERVER['SERVER_NAME'];
http://www.mon-site.fr/whereami.php | obtenu par precedent + $_SERVER['PHP_SELF']
La valeur retournée par getcwd(); n’est donc visiblement pas la bonne retournée !?! On dirait que ça retourne dernier site, donc actuellement visité.
N’hésitez surtout pas si vous ne comprenez pas quelque chose, car sincèrement, je ne sais plus où chercher, je ne comprends pas trop ce problème de chemins, on dirait que lorsque 2 visiteurs visitent en même temps 2 sites (ou plus), mon serveur perd un peu les pédales et va voir le dernier répertoire courant...et ne prend pas le bon site parfois…

Merci bien pour votre aide,
Damien.
onipif est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2006, 14h23   #2
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 87
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : avril 2003
Messages : 87
Points : 25
Points : 25
Peut être un autre piste, enfin je ne pense pas mais bon, dans la demarche trouvée sur http://odelmotte.developpez.com/tuto.../iis6phpmysql/,
il est spécifier de mettre les dll php5isapi.dll et php5ts.dll dans :
"C:\WINDOWS\System32\inetsrv".

Pour ma part, elle sont dans le répertoire des fichiers PHP, et le lien d'ajout de filtres ISAPI se fait donc en rapport à cet emplacement, et non le chemin système cité plus haut.
Je viens de copier et coller ces 2 dll, dans le chemin système, j'ai reconfigué un site php avec le bon filtre, puis j'ai redemarré le "site WEB" : et j'ai eu une erreur du type : "L'accès à cet emplacement de la mémoire n'est pas valide". J'ai redemarré complétement le service WEB IIS, et idem...
N'est-ce pas une piste a suivre ?

(PS : je n'ai pas désinscrit l'ancienne dll pour reinscrire la nouvelle, je ne sais pas si mon erreur via de là ?!?, j'essayerai plus tard dans la journée...)

Aie aie aie, quelle galère
onipif est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2006, 08h05   #3
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 87
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : avril 2003
Messages : 87
Points : 25
Points : 25
Je viens de mettre à jour PHP avec la dernière version (5.1.4) et donc le nouveau php5isapi.dll et php5ts.dll, toujours la même chose...là je regarde du côté de IIS, je suis actuellement sous la version 6 dans un environnement WINDOWS 2003 Serveur Standard Edition... (Elle date de quand la dernière distribution de IIS ?)

Si jamais une idée lumineuse vous viens, n'hésitez pas

Merci encore (même si je n'ai pas de réponse lol).
onipif est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2006, 09h04   #4
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 87
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : avril 2003
Messages : 87
Points : 25
Points : 25
Bon on a laché l'affaire, et sur le forum microsoft, certains on eu le même pb et leur solution fut d'installer Apache...hop c'est parti pour moi...merci quand même à ceux qui ont lu.
onipif est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h40.


 
 
 
 
Partenaires

Hébergement Web