Bonjour à tous,

J'ai un problème avec mon serveur lorsque je veux faire un appel d'une page par GET.

Je développe une application en PHP et j'ai besoin de récupérer le contenu d'une page. Je fais donc l'appel suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$url = "http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446";
http_get($url, $appelOptions, $appelInfos);
Cependant, cet appel ne marche pas tout le temps (environ 1 fois sur 5). J'ai donc installé Wireshark pour analyser ce qui est envoyé par mon serveur.

Un appel qui fonctionne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Hypertext Transfer Protocol
GET http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446 HTTP/1.1\r\n
    Request Method: GET
    Request URI: http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446
    Request Version: HTTP/1.1
User-Agent: PECL::HTTP/1.6.5 (PHP/5.2.4-2ubuntu5.7)\r\n
Host: mysite.fr:9090\r\n
Pragma: no-cache\r\n
Accept: */*\r\n
Proxy-Connection: Keep-Alive\r\n
Keep-Alive: 300\r\n
Connection: keep-alive\r\n
Date: Fri, 15 Jun 2012 16:40:46 +0200\r\n
Accept-Charset: utf-8\r\n
Accept-Encoding: gzip;q=1.0,deflate;q=0.5\r\n
\r\n
Un appel qui ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Hypertext Transfer Protocol
GET http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446 HTTP/1.1\r\n
    Request Method: GET
    Request URI: http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446
    Request Version: HTTP/1.1
User-Agent: PECL::HTTP/1.6.5 (PHP/5.2.4-2ubuntu5.7)\r\n
Host: mysite.fr\r\n
Pragma: no-cache\r\n
Accept: */*\r\n
Proxy-Connection: Keep-Alive\r\n
Keep-Alive: 300\r\n
Connection: keep-alive\r\n
Date: Fri, 15 Jun 2012 16:40:34 +0200\r\n
Accept-Charset: utf-8\r\n
Accept-Encoding: gzip;q=1.0,deflate;q=0.5\r\n
\r\n
Je remarque que dans certains cas, il retire le port dans le "Host", ce qui je pense cause mon problème.

J'ai fait un autre test. J'ai essayé de récupérer le contenu de cette page en ligne de commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
wget http://mysite.fr:9090/neolane-webservice/campagnesclient/Coclico=1135446
Dans ce cas, jamais de soucis.

Je pense donc qu'il doit s'agir d'un problème lié à Apache. Auriez-vous des pistes pour m'aider à comprendre l'origine du problème ?