Ouverture d'un fichier distant

Scade
Invité n'ayant pas de compte PHPfrance

01 déc. 2008, 12:58

Bonjour!

J'ai un problème assez particulier...
Je travaille sur un serveur qui à deux noms de domaines.
Sur l'un de ces noms de domaine, il y à un script qui teste la solvabilité d'un client.
Pour ce faire, il ouvre un fichier distant en lui passant des paramètres, et récupère le résultats.
Ce qui marche au poil.

J'ai repris ce code et l'ai mis sur le second nom de domaine.
Et là surprise:

-----------------

Warning: fopen() [function.fopen]: URL file-access is disabled in the server configuration in /home/httpd/vhosts/gnagnagna/blablabla.php on line 175

Warning: fopen(fichier distant ^^) [function.fopen]: failed to open stream: no suitable wrapper could be found in /home/httpd/vhosts/gnagnagna/blablabla.php on line 175

-----------------

J'ai bien lu la faq qui précise que ce problème survient si l'ouverture de fichier distants est désactivé sur le serveur, mais dans ce cas comment expliquer que j'y arrive sur un domaine et pas sur l'autre?
Un phpinfo m'a permis de vérifier que allow url fopen est bien à Off...

D'avance merci pour votre aide ^^

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

01 déc. 2008, 14:06

Hé bien il faut qu'il soit à On le "allow url fopen"
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

ViPHP
ViPHP | 1136 Messages

01 déc. 2008, 14:07

Salut ,

Le domaine qui fonctionne pointe aussi vers un serveur distant ?

si c'est le cas , les versions de PHP sont-elles les mêmes ?

De plus il me semble que l'option allow_url_fopen doit être à true pour que ce type de requête fonctionne ...

Ensuite , un bout de code serai le bienvenu .. car un message d'erreur seul sans code , ce n'est pas forcement évident .

Ainsi que des précisions sur l'organisation domaines / serveurs ..

Combien de serveurs , quel domaine pointe vers quel serveur , ou est exécuté le code qui pose problème ...

Scade
Invité n'ayant pas de compte PHPfrance

01 déc. 2008, 14:58

Hello et merci pour vos réponses.

Comme je l'ai dit il n'y à qu'un seul serveur, qui contient deux domaines. Et de fait les versions de php sont les mêmes.
Le domaine qui fonctionne pointe vers le même serveur que le domaine qui ne fonctionne pas.
Je sais bien que allow_url_fopen doit être à true, et c'est pour ça que j'ai écrit un message ici: elle est à false, mais cela ne m'empêche pas sur le domaine A de pouvoir exécuter un script distant alors que je n'y arrive pas sur le domaine B.

Mon code se résume à faire un fopen sur une url:
// encodieren und zusammensetzen der URL
			$getURLEncode = $getURL . "?userid=" . urlencode($solvuserid) . "&password=" . urlencode($solvpassword) . "&iptype=" . urlencode($iptype) . "&iname=" . urlencode($iname) . "&ifirstname=" . urlencode($ifirstname) . "&istreet=" . urlencode($istreet) .  "&ihouseno=" . urlencode($ihouseno) . "&icountrycode=" . urlencode($icountrycode) . "&ipostcode=" . urlencode($ipostcode) . "&itown=" . urlencode($itown) . "&ibirthdate=" . urlencode($ibirthdate) . "&iphonenumber=" . urlencode($iphonenumber);

			// oeffnen und testen der verbindung
			if (!$fp = fopen($getURLEncode,"r"))
			{
				$response = 'Connexion non établie';
			}
L'url est du style: https://hop.pof.ch/creditcheck/getratin ... onenumber=

par contre je me demandais:
Sur le domaine A, où le code marche, je suis avec une connexion normale. Mais sur le domaine B où ça plante, je suis en ssl, est-ce que ça peut expliquer le problème selon vous?

J'espère avoir correctement éclairé ta lanterne stopher, sinon n'hésites pas à me redemander des détails. Et encore merci.[/php]

ViPHP
ViPHP | 5924 Messages

01 déc. 2008, 15:00

Manifestement d'après le post initial il n'y a qu'un seul serveur…
Alors la réponse est simple. Si on suppose que les deux domaines sont servis par le même serveur apache et que php se comporte différemment, alors la configuration est différente.
Donc tu nous postes la configuration du serveur web et les différentes configurations de php…

Scade
Invité n'ayant pas de compte PHPfrance

02 déc. 2008, 10:27

Bonjour.
Le problème est résolu, l'hébergeur chez qui nous avons ce serveur à fait je n'sais quoi (il n'a pas voulu me dire...). Comme c'est un serveur mutualisé peut-être que la config de php ne compte pas vraiment et qu'il y à un truc derrière qui détermine ce genre de paramètres, car le allow url fopen des deux domaines est toujours à Off.

Enfin bon, merci d'avoir pris le temps de me répondre en tout cas, et désolé pour le dérangement ;)
Bonne journée.

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

02 déc. 2008, 17:04

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène