Aller au contenu

Sujets conseillés

Posté

On a un nouveau proxy au boulot, et apparemment, Apache tente des connexions directes en local.

Y a t'il un moyen de le configurer pour qu'il passe par le proxy ? Comment faire ?

Merci d'avance.

Posté

Euh... Le comportement normal d'Apache c'est d'être un serveur, donc s'il fait des connexions sortantes il faut nous préciser qui c'est qui les fait... mod_proxy? php? Autre chose?

Ou alors je n'ai pas compris la question...

Jacques.

Posté

Au temps pour moi ;)

Mon ordi (sous windows XP) utilise un proxy pour se connecter au net.

Ma version locale d'Apache (EasyPHP) n'est apparemment pas paramétrée pour accéder à ce proxy, d'où l'impossibilité d'accès à des fichiers distants.

Comment configurer Apache en local pour qu'il passe par le proxy ?

Posté

Tu veux dire dans un script php? J'ai l'impression qu'il n'y a malheureusement pas de config globale possible (i.e. dans php.ini), donc tu es obligé de modifier ton code pour que tous les appels utilisent un context dans lequel le paramètre proxy va être réglé.

Cf stream_context_create et stream_context_set_option.

Jacques.

Posté

Au temps pour moi ;)

Mon ordi (sous windows XP) utilise un proxy pour se connecter au net.

Ma version locale d'Apache (EasyPHP) n'est apparemment pas paramétrée pour accéder à ce proxy, d'où l'impossibilité d'accès à des fichiers distants.

Comment configurer Apache en local pour qu'il passe par le proxy ?

Ce n'est pas faisable directement dans la configuration d'Apache. Je vois 2 possibilités :

1/ Faire un proxy transparent sur le routeur par lequel tu passes. Si le routeur est une machine Linux, ça se fait très simplement, une ou deux règle iptables et c'est bon.

2/ Si la première solution ne peut pas être appliquée, alors utiliser la solution que jcaron préconise, qui est disponible dans php 5.0

<?php
$context = stream_context_create(
array('http'=>
array('proxy'=>'tcp://proxy.monentreprise.com:3128')
));

$contents = file_get_contents('http://www.site_distant.com/', false, $context);
?>

Bien entendu, le port 3128 est à changer, j'ai pris ce numéro car le proxy squid l'utilise par défaut.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...