Magazine High tech

Howto : Drupal derrière un proxy avec authentification

Publié le 19 août 2009 par Pydubreucq

drupal_blog

Si vous utilisez Drupal derrière un proxy sans ou avec authentification, comme par exemple pour un intranet.

Vous allez être confronté à un gros problème d’utilisation. L’accès à l’interface d’administration est très lent, car il fait des recherches pour savoir les mises à jours disponible, du socle drupal et de ses modules…

Voici comment contourner le problème :

Ajoutez dans le fichier settings.php :

$conf = array(’update_fetch_url’ => ‘http://localhost:8888/release-history/’ );

Puis autorisez sur votre serveur Apache le mod_proxy (debian-like) :

# ln -s /etc/apache2/mods-available/proxy.* /etc/apache2/mods-enabled/
# ln -s /etc/apache2/mods-available/proxy_http.load /etc/apache2/mods-enabled/

# /etc/init.d/apache restart

Ensuite autorisez le mod_proxy pour le localhost : (Afin d’éviter ce message d’erreur : client denied by server configuration: proxy)

# vi /etc/apache2/mods-enabled/proxy.conf

<IfModule mod_proxy.c>
ProxyRequests Off
<Proxy *>
Order deny,allow
Deny from all
Allow from localhost
</Proxy>
ProxyVia On
</IfModule>

Puis ajoutez ces quelques règles au niveau d’Apache :

ProxyPass /release-history/ http://updates.drupal.org/release-history/
ProxyPassReverse /release-history/ http://updates.drupal.org/release-history/
ProxyRemoteMatch ^.*/release-history/.*$ http://localhost:4444/

Et enfin il faut utiliser cntlm afin de gérer l’authentification avec le proxy qui vous empêche de faire les mises à jour Drupal. CNTLM est un proxy d’authentification comme NTLMaps

CNTLM est disponible sous Ubuntu, un simple « aptitude install cntlm » et le tour est joué.

Il faut maintenant le configurer, pour cela :

# vi /etc/cntlm.conf

Voici les paramètres à changer :

Username   votre-user
Domain   votre-domaine
Password   votre-mot-de-passe   # Use hashes instead (-H)
#Workstation   netbios_hostname   # Should be auto-guessed

Proxy   votre-proxy:8080
#Proxy   10.217.112.42:8080

#
# This is the port number where Cntlm will listen (Ceci est le port d’écoute de CNTLM)
#
Listen   4444

On retrouve d’ailleurs ce port d’écoute dans les règles de Proxy ci-dessus.

Il vous suffit de redémarrer CNTLM et ça devrait fonctionner.

Si cela ne fonctionne pas, n’hésitez pas à revenir vers moi ;)

Merci à Stillcut du forum drupalfr.org pour m’avoir orienté vers un post du forum officiel de Drupal qui m’a permis de trouver la solution

client denied by server configuration: proxy:
client denied by server configuration: proxy:

Retour à La Une de Logo Paperblog

LES COMMENTAIRES (1)

Par david
posté le 08 septembre à 11:37
Signaler un abus

Génial cet article. Mais avez-vous l'équivalent avec une config Wamp (my entreprise is windows only). Merci

A propos de l’auteur


Pydubreucq 165 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte