web-dev-qa-db-fra.com

Le programme CGI ne peut pas accéder à des sites externes via un proxy

Nous avons une machine "serveur" locale (Web, Samba, LTSP, DHCP, etc.) 192.168.0.11 exécutant Mandriva/Apache2 qui se connecte à Internet en utilisant une autre machine en tant que proxy (Vista 192.168.0.2:6588). Les navigateurs, wget, mcc sur 0.11 peuvent se connecter au réseau sans aucun problème. Toutefois, les programmes CGI exécutés sur cette machine ne peuvent pas extraire de données de sites externes. Les mêmes programmes fonctionnent correctement lorsqu'ils sont exécutés sous Apache sur une machine 0.2.

Ont essayé:

 <IfModule mod_proxy.c> 
 <Proxy *> 
 Refuser, autorisez 
 Autoriser tous les 
 </ Proxy> 
 ProxyRemote * http://192.168.0.2:6588
 NoProxy 192.168.0.1/254
 </ IfModule> 

dans le fichier de configuration httpd. Le module proxy a été activé.

Est-ce la bonne ligne de pensée? Comment vérifier que les paramètres de proxy fonctionnent? Tous les autres fichiers de configuration doivent être vérifiés? Merci!

1
Rajiv B.

Vous avez trouvé la réponse ici: https://stackoverflow.com/questions/9191860/how-to-connect-a-socket-to-an-http-server-through-proxy

En gros, il n’est pas nécessaire de modifier les paramètres Apache. Les programmes CGI doivent être modifiés pour "utiliser" le proxy. Ils doivent ouvrir le port "6588" sur "192.168.0.2" comme indiqué ci-dessus, envoyer un "nom de serveur CONNECT: 80 HTTP/1.0\r\n\r\n 'string et continuez ensuite avec GET/POST comme ils l’ont fait.

Simple, une fois que vous savez comment faire.

0
Rajiv B.