Ki nézi a haproxy mögötti weboldalunkat?

Death_to_stock_photography_weekend_work (4 of 10)Bizonyára mindenki kíváncsi arra, hogy hányan, kik és honnan nézik weboldalunkat. Az előző postban készített configgal viszont azt látjuk az apache (vagy amilyen web servert használunk) logjaiban viszont az látszik, hogy minden weboldal letöltés a haproxy “belső lába” felől jön.

Finomítsunk tehát rajta! A példában egy tunnel kapcsolatot állapítottunk be, a forwardfor opcióval. A következőt kell tenni, hogy az apache access.log-ban az eredeti bejövő kérések IP-i látszanak. A httpd.conf vagy apache2.conf -ban (oprendszertől függően) a LogFormat szekciót módosítani kell a következőkkel:

LogFormat “%{X-Forwarded-For}i %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined

Én a “combined” LogFormat -ot cseréltem a fenti sorra. Apache reload vagy restart után a logolás e szerint fog már történni.

WordPress-esek, akik szeretnének számláló plugint használni (pl.: counterize), a következő lépést tegyék még meg:

A wp_config.php elejére tegyük be ezt a kiegészítést:

if(isset($_SERVER[‘HTTP_X_FORWARDED_FOR’])) {
$xffaddrs = explode(‘,’,$_SERVER[‘HTTP_X_FORWARDED_FOR’]);
$_SERVER[‘REMOTE_ADDR’] = $xffaddrs[0];
}

/forrás: Benjamin Wiedmann – thanks to Benjamin Wiedmann/