Ntop reverse proxié par Apache

février 09, 2007  |   Blog   |     |   Commentaires fermés sur Ntop reverse proxié par Apache

L’ancienne méthode fournie dans la documentation de Ntop était basée sur mod_rewrite qui ne réecrit que les URLs. Avec les versions récentes de ntop cela ne suffit plus : il faut modifier le code HTML retourné au navigateur. Nous allons donc combiner les 2 procédés.

Il nous faut d’abord installer le module mod_proxy-html qui va modifier le contenu des pages HTML retournés, à la volée.

On récupère tout d’abord le code du module :

 wget http://apache.webthing.com/mod_proxy_html/mod_proxy_html.c

Après avoir vérifié que libxml2 est bien installée dans /usr/lib/libxml2.so (et les headers dans /usr/include/libxml2), on compile le module :

/usr/local/apache2/bin/apxs -c -I/usr/include/libxml2 -i mod_proxy_html.c

On copie ensuite le fichier mod_proxy_html.so dans le répertoire modules de l’arborescence apache2 (en général /usr/local/apache2/modules/).
Puis on ajoute dans httpd.conf (au niveau des directives LoadModule) :

LoadFile /usr/lib/libxml2.so
LoadModule proxy_html_module modules/mod_proxy_html.so

Et au niveau du Virtual Host :

ProxyPass /ntop/  http://localhost:3000/
ProxyPassReverse /ntop/  http://localhost:3000/

<Location /ntop/>
ProxyHTMLLogVerbose On
ProxyHTMLExtended On

SetOutputFilter	 proxy-html
ProxyHTMLURLMap	 /	/ntop/
ProxyHTMLURLMap /ntop/plugins/ntop/ /ntop/plugins/
RequestHeader 	 unset	Accept-Encoding
ProxyHTMLLogVerbose On
ProxyHTMLExtended On

RewriteEngine On
RewriteCond %{HTTP_REFERER} srv.reytan.fr/ntop
RewriteCond %{REQUEST_URI} !^/ntop/
RewriteRule ^/(.*)$ http://srv.reytan.fr/ntop/$1 [L,P]
</Location >

On vérifie la syntaxe et le chargement des modules par :

 # apachectl -t
Syntax OK

Les commentaires sont fermés.