Varnish problème AWSTAT mod_rpaf
Varnish problème AWSTAT mod_rpaf.
Vous avez un VPS ou serveur dédié , vous avez installé Varnish comme cache car votre site avez du mal a absorber les visiteurs ? , vous avez totalement raison, mais il faut savoir que AWSTATS ne fonctionne pas de base avec Varnish.
Si vous avez installé Varnish AWSTATS vous montrera le genre de log suivant :
Vous remarquerez la série de 1 à la place du nombre de visite.
Pour palier a cela nous allons utiliser le mod_rpaf ce module apache vous permet de remplacer l’adresse ip du client dans l’entête des requêtes HTTP.
Cela est bien pratique quand vous avez un reverse proxy avant le VPS ou serveur dédié.
Vous allez trouver sur internet pas mal de tutorial pour installer le mod_rpaf mais il ne fonctionne plus ! je vous donne l’astuce afin de l’installer.
Pour commencer nous allons télécharger mod_rpaf :
cd /usr/local/src wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz tar xzvf mod_rpaf-0.6.tar.gz cd mod_rpaf-0.6
En installant le mod_rpaf vous allez avoir ce problème :
/usr/local/httpd-2.4.3/build/libtool --silent --mode=compile gcc -std=gnu99 -prefer-pic -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/httpd-2.4.3/include -I/usr/local/httpd-2.4.3/include -I/usr/local/httpd-2.4.3/include -c -o mod_rpaf-2.0.lo mod_rpaf-2.0.c && touch mod_rpaf-2.0.slo mod_rpaf-2.0.c: In function 'rpaf_cleanup': mod_rpaf-2.0.c:150: error: 'conn_rec' has no member named 'remote_ip' mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'remote_addr' mod_rpaf-2.0.c:151: warning: implicit declaration of function 'inet_addr' mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'remote_ip' mod_rpaf-2.0.c: In function 'change_remote_ip': mod_rpaf-2.0.c:164: error: 'conn_rec' has no member named 'remote_ip' mod_rpaf-2.0.c:183: error: 'conn_rec' has no member named 'remote_ip' mod_rpaf-2.0.c:186: error: 'conn_rec' has no member named 'remote_ip' mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'remote_addr' mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'remote_ip' apxs:Error: Command failed with rc=65536
Pour corriger l’erreur nous allons patcher le fichier mod_rpaf-2.0.c , car la version de 2.4 de apache apporte des modifications d’APIS qui ne sont prise en compte dans la version d’origine de mod_rpaf.
Pour patcher le fichier, placez vous dans le répertoire du mod
cd /usr/local/src/mod_rpaf-0.6
Tapez la commande :
wget http://whm-cpanel-tutorial.fr/mod_rpaf-2.0.patch
Appliquez le patch que l’on vient de télécharger :
patch -p0 < mod_rpaf-2.0.patch
Vous devez avoir le log suivant : patching file mod_rpaf-2.0.c
Il vous reste plus cas compiler le mod_rpaf maintenant :
apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
Voila maintenant le mod_rpaf est bien installé sur votre serveur.
Vous allez maintenant editer le fichier de configuration de votre apache pré post avec cette commande et ajouter les lignes suivantes :
nano /usr/local/apache/conf/includes/pre_virtualhost_global.conf LoadModule rpaf_module modules/mod_rpaf-2.0.so # mod_rpaf configuration RPAFenable On RPAFsethostname On RPAFproxy_ips xx.xx.xx.xx < xx. est a remplacer pour l ip de votre serveur RPAFheader X-Forwarded-For
On ferme le fichier et on redemare apache
service httpd restart
Vous pouvez maintenant forcer la mise a jour de AWSTATS pour voir le changement :
/scripts/runweblogs USERNAME-CPANEL
Et maintenant vous avez donc AWSTATS qui fonctionne comme avant !
Laisser un commentaire