#!/usr/bin/perl
# use diagnostics;
# use strict;
#-Description-------------------------------------------
# Free realtime web server logfile analyzer (in Perl) working as a CGI to show
# advanced web statistics. For better performances, you should use this script
# at least once a day (from a scheduler for example).
# See README.TXT file for setup and benchmark informations
# See COPYING.TXT file about AWStats GNU General Public License
#-------------------------------------------------------
#-------------------------------------------------------
# Defines
#-------------------------------------------------------
$VERSION="2.23q";
$Lang=0;
# Default value
$SortDir = -1; # -1 = Sort order from most to less, 1 = reverse order (Default = -1)
$VisitTimeOut = 10000; # Laps of time to consider a page load as a new visit. 10000 = one hour (Default = 10000)
$FullHostName = 1; # 1 = Use name.domain.zone to refer host clients, 0 = all hosts in same domain.zone are one host (Default = 1, 0 never tested)
$MaxLengthOfURL= 70; # Maximum length of URL shown on stats page. This affects only URL visible text, link still work (Default = 70)
$BenchMark = 0; # Set this to 1 to get some benchmark informations as a second's counter since 1970 (Default = 0)
# Images for graphics
$BarImageVertical_v = "barrevv.png";
$BarImageHorizontal_v = "barrehv.png";
$BarImageVertical_u = "barrevu.png";
$BarImageHorizontal_u = "barrehu.png";
$BarImageVertical_p = "barrevp.png";
$BarImageHorizontal_p = "barrehp.png";
$BarImageVertical_h = "barrevh.png";
$BarImageHorizontal_h = "barrehh.png";
$BarImageVertical_k = "barrevk.png";
$BarImageHorizontal_k = "barrehk.png";
# URL with such end signature are king of URL we only need hits
@NotPageList= (
"\\.gif","\\.jpg","\\.png","\\.bmp",
# "\\.zip","\\.arj","\\.gz","\\.z",
# "\\.pdf","\\.doc","\\.ppt","\\.rtf","\\.txt",
# "\\.mp3","\\.wma"
);
# Those addresses are shown with those lib (First column is full relative URL, Second column is text to show instead of URL)
%Aliases = (
"/", "HOME PAGE",
"/cgi-bin/awstats.pl", "AWStats stats page",
"/cgi-bin/awstats/awstats.pl", "AWStats stats page",
# Following the same example, you can put here HTML text you want to see in links instead of URL text.
"/YourRelativeUrl", "Your HTML text",
"/YourRelativeUrl", "Your HTML text"
);
# ---------- Search engines list --------------------
%SearchEnginesHash=(
# Most common search engines
"yahoo\.","Yahoo", "altavista\.","AltaVista",
"msn\.dk/","MSN (dk)", "msn\.fr/","MSN (fr)", "msn\.","MSN",
"voila\.", "Voila", "lycos\.","Lycos", "nomade\.fr/","Nomade",
"search\.terra\.","Terra",
"google\.","Google", "alltheweb\.com","AllTheWeb",
# Others
"hotbot\.","Hotbot", "northernlight\.","NorthernLight",
"webcrawler\.","WebCrawler", "metacrawler\.","MetaCrawler (Metamoteur)", "go2net\.com","Go2Net (Metamoteur)",
"go\.com","Go.com",
"euroseek\.","Euroseek", "excite\.","Excite", "lokace\.", "Lokace", "spray\.","Spray",
"ctrouve\.","C'est trouvé", "francite\.","Francité", "\.lbb\.org", "LBB", "rechercher\.libertysurf\.fr","Libertysurf",
"netscape\.","Netscape", "netfind\.aol\.com","AOL", "recherche\.aol\.fr","AOL",
"snap\.","Snap", "nbci\.com/search","NBCI",
"askjeeves\.","Ask Jeeves", "mamma\.","Mamma",
"dejanews\.","DejaNews",
"dmoz\.org","DMOZ",
"goo\.ne\.jp","goo",
"infoseek\.co\.jp","Infoseek",
"biglobe\.ne\.jp","Biglobe",
"infoweb\.ne\.jp","Infoweb",
"navi\.ocn\.ne\.jp","OCN Navi",
"search\.com","Other search engines"
);
# ---------- Search engines URL --------------------
@SearchEngineUrl=(
"yahoo\.","p=",
"altavista\.","q=",
"msn\.dk","MT=",
"msn\.fr","MT=",
"msn\.","MT=",
"google\.","q=",
"alltheweb\.","query=",
"lycos\.","query=",
"excite\.","search=",
"infoseek\.","qt=",
"eureka\.","q=",
"hotbot\.","MT=",
"webcrawler","searchText=",
"netscape\.","search=",
"mamma\.","query=",
"northernlight\.","qr=",
"goo\.","MT=",
"biglobe\.","q=",
"infoweb\.","Querystring=",
"ocn\.","kw=",
);
@WordsToCleanSearchUrl= ("act=","annuaire=","btng=","categoria=","cou=","dd=","domain=","dt=","dw=","exec=","geo=","hc=","height=","hl=","hs=","kl=","lang=","loc=","lr=","matchmode=","medor=","message=","meta=","mode=","order=","page=","par=","pays=","pg=","pos=","prg=","qc=","refer=","sa=","safe=","sc=","sort=","src=","start=","stype=","tag=","temp=","theme=","url=","user=","width=","what=","\\.x=","\\.y=","WTS=","SM=","DE=","DC=","SDB=","SRT=","base=","sv=","lk=","svx=","osf=","qp=","rf=","nh=","col=","cat=","st=","encoding=","df=","template=","sourceid=","results=","part=","act\.search=");
# Never put the following exclusion ("Claus=","kw=","keyword=","MT","p=","q=","qr=","qt=","query=","s=","search=","searchText=") because they are strings that contain keywords we're looking for.
# ---------- HTTP Code with tooltip --------
%httpcode = (
"201", "Partial Content", "202", "Request recorded, will be executed later", "204", "Request executed", "206", "Partial Content",
"301", "Moved Permanently", "302", "Found",
"400", "Bad Request", "401", "Unauthorized", "403", "Forbidden", "404", "Not Found", "408", "Request Timeout",
"500", "Internal Error", "501", "Not implemented", "502", "Received bad response from real server", "503", "Server busy", "504", "Gateway Time-Out", "505", "HTTP version not supported",
"200", "OK", "304", "Not Modified" # 200 and 304 are not errors
);
# English
$message[0][0]="ÉÔÌÀ";
$message[1][0]="ÉÔÌÀ(̾Á°²ò·è¤Ç¤¤Ê¤¤IP)";
$message[2][0]="¾åµ°Ê³°¤ÎˬÌä¼Ô";
$message[3][0]="¾ÜºÙ¤ò¸«¤ë";
$message[4][0]="ÍËÆü";
$message[5][0]="·î";
$message[6][0]="ǯ";
$message[7][0]="¤ÎÅý·×";
$message[8][0]="ºÇ½é¤ÎˬÌä";
$message[9][0]="ºÇ¶á¤ÎˬÌä";
$message[10][0]="ˬÌä¼Ô¿ô";
$message[11][0]="°ì°Õ¤ÊˬÌä¼Ô¿ô";
$message[12][0]="ˬÌä";
$message[13][0]="¥¡¼¥ï¡¼¥É";
$message[14][0]="²ó¿ô";
$message[15][0]="³ä¹ç";
$message[16][0]="¥È¥é¥Õ¥£¥Ã¥¯¤ÎÅý·×";
$message[17][0]="¥É¥á¥¤¥ó/¹ñ";
$message[18][0]="ˬÌä¼Ô¿ô";
$message[19][0]="¥Ú¡¼¥¸/URL";
$message[20][0]="»þ´ÖÂÓÊ̤Υ¢¥¯¥»¥¹¾õ¶·";
$message[21][0]="¥Ö¥é¥¦¥¶";
$message[22][0]="HTTP¥¨¥é¡¼";
$message[23][0]="Referrers";
$message[24][0]="¸¡º÷¥¡¼¥ï¡¼¥É";
$message[25][0]="ˬÌä¼Ô¤Î¥É¥á¥¤¥ó/¹ñ";
$message[26][0]="¥Û¥¹¥È";
$message[27][0]="¥Ú¡¼¥¸";
$message[28][0]="°Û¤Ê¤ë¥Ú¡¼¥¸";
$message[29][0]="¥¢¥¯¥»¥¹";
$message[30][0]="¾åµ°Ê³°¤Î¥¡¼¥ï¡¼¥É";
$message[31][0]="ÍøÍѥ֥饦¥¶";
$message[32][0]="HTTP¥¨¥é¡¼¥³¡¼¥É";
$message[33][0]="Netscape¤Î¥Ð¡¼¥¸¥ç¥ó";
$message[34][0]="Internet Explorer¤Î¥Ð¡¼¥¸¥ç¥ó";
$message[35][0]="ÍøÍÑOS";
$message[36][0]="¤³¤Î¥µ¥¤¥È¤Ø¤ÎÀܳ¸µ";
$message[37][0]="¾ì½ê";
$message[38][0]="URL¤ÎľÀÜÆþÎÏ/¥Ö¥Ã¥¯¥Þ¡¼¥¯";
$message[39][0]="NetNews¤«¤é¤Î¥ê¥ó¥¯";
$message[40][0]="¸¡º÷¥¨¥ó¥¸¥ó¤«¤é¤Î¥ê¥ó¥¯";
$message[41][0]="Ê̤Υµ¥¤¥È¤Î¥ê¥ó¥¯(¸¡º÷¥¨¥ó¥¸¥ó°Ê³°¤Î¥µ¥¤¥È)";
$message[42][0]="ÆâÉô¤Î¥ê¥ó¥¯(Ʊ°ì¥µ¥¤¥È¤ÎÊÌ¥Ú¡¼¥¸)";
$message[43][0]="¸¡º÷¥¨¥ó¥¸¥ó¤Ç»ÈÍѤµ¤ì¤¿Á´";
$message[44][0]="Kb";
$message[45][0]="̾Á°²ò·è¤Ç¤¤Ê¤¤IP¥¢¥É¥ì¥¹";
$message[46][0]="ÉÔÌÀ¤ÊOS (Referer¥Õ¥£¡¼¥ë¥É)";
$message[47][0]="Í׵ᤵ¤ì¤¿¤¬Â¸ºß¤·¤Ê¤¤URL(HTTP¥¨¥é¡¼¥³¡¼¥É404)";
$message[48][0]="IP¥¢¥É¥ì¥¹";
$message[49][0]="¥¨¥é¡¼ ¥Ò¥Ã¥È¿ô";
$message[50][0]="ÉÔÌÀ¤Ê¥Ö¥é¥¦¥¶(Referer¥Õ¥£¡¼¥ë¥É)";
$message[51][0]="ˬÌ䤷¤¿¥í¥Ü¥Ã¥È";
$message[52][0]="ˬÌä/ˬÌä¼Ô";
$message[53][0]="¥í¥Ü¥Ã¥È/¥¹¥Ñ¥¤¥À¡¼¤ÎˬÌä";
$message[54][0]="°ìÊâ¿Ê¤ó¤ÀWebÅý·×¤Î¤¿¤á¤Î¥Õ¥ê¡¼¤Ê¥ê¥¢¥ë¥¿¥¤¥à¥í¥°Ê¬ÀÏ¥¹¥¯¥ê¥×¥È";
$message[55][0]="Ãæ";
$message[56][0]="¥Ú¡¼¥¸";
$message[57][0]="¥Ò¥Ã¥È";
$message[58][0]="¥Ð¡¼¥¸¥ç¥ó";
$message[59][0]="OS";
$message[60][0]="1·î";
$message[61][0]="2·î";
$message[62][0]="3·î";
$message[63][0]="4·î";
$message[64][0]="5·î";
$message[65][0]="6·î";
$message[66][0]="7·î";
$message[67][0]="8·î";
$message[68][0]="9·î";
$message[69][0]="10·î";
$message[70][0]="11·î";
$message[71][0]="12·î";
$message[72][0]="Æü";
# French
$message[0][1]="Inconnus";
$message[1][1]="Inconnu (IP non résolue)";
$message[2][1]="Autres visiteurs";
$message[3][1]="Voir détails";
$message[4][1]="Jour";
$message[5][1]="Mois";
$message[6][1]="Année";
$message[7][1]="Statistiques du site";
$message[8][1]="Première visite";
$message[9][1]="Dernière visite";
$message[10][1]="Nbre visites";
$message[11][1]="Nbre visiteurs différents";
$message[12][1]="Visite";
$message[13][1]="Mot clé";
$message[14][1]="Recherche";
$message[15][1]="Pourcentage";
$message[16][1]="Résumé";
$message[17][1]="Domaines/Pays";
$message[18][1]="Visiteurs";
$message[19][1]="Pages/URL";
$message[20][1]="Heures";
$message[21][1]="Navigateurs";
$message[22][1]="Erreurs HTTP";
$message[23][1]="Origine/Referrer";
$message[24][1]="Mots clés de recherche";
$message[25][1]="Domaines/pays visiteurs";
$message[26][1]="des hôtes";
$message[27][1]="des pages";
$message[28][1]="pages différentes";
$message[29][1]="Accès";
$message[30][1]="Autres mots";
$message[31][1]="Navigateurs utilisés";
$message[32][1]="Codes Erreurs HTTP";
$message[33][1]="Versions de Netscape";
$message[34][1]="Versions de MS Internet Explorer";
$message[35][1]="Systèmes d'exploitation utilisés";
$message[36][1]="Connexions au site par";
$message[37][1]="Origine de la connexion";
$message[38][1]="Adresse directe / Bookmarks";
$message[39][1]="Lien depuis un Newsgroup";
$message[40][1]="Lien depuis un moteur de recherche Internet";
$message[41][1]="Lien depuis une page externe (autres sites, hors moteurs de recherche)";
$message[42][1]="Lien depuis une page interne (autre page du site)";
$message[43][1]="des critères de recherches utilisés";
$message[44][1]="Ko";
$message[45][1]="Adresses IP des visiteurs non identifiables (IP non résolue)";
$message[46][1]="OS non reconnus (champ referer brut)";
$message[47][1]="URLs du site demandées non trouvées (Code HTTP 404)";
$message[48][1]="Adresse IP";
$message[49][1]="Hits en échec";
$message[50][1]="Navigateurs non reconnus (champ referer brut)";
$message[51][1]="Robots visiteurs";
$message[52][1]="visite/visiteur";
$message[53][1]="Visiteurs Robots/Spiders";
$message[54][1]="Analyseur de log gratuit pour statistiques Web avancées";
$message[55][1]="sur";
$message[56][1]="Pages";
$message[57][1]="Hits";
$message[58][1]="Versions";
$message[59][1]="OS";
$message[60][1]="Jan";
$message[61][1]="Fév";
$message[62][1]="Mar";
$message[63][1]="Avr";
$message[64][1]="Mai";
$message[65][1]="Juin";
$message[66][1]="Juil";
$message[67][1]="Août";
$message[68][1]="Sep";
$message[69][1]="Oct";
$message[70][1]="Nov";
$message[71][1]="Déc";
# Dutch
$message[0][2]="Onbekend";
$message[1][2]="Onbekend (Onbekend ip)";
$message[2][2]="Andere bezoekers";
$message[3][2]="Bekijk details";
$message[4][2]="Dag";
$message[5][2]="Maand";
$message[6][2]="Jaar";
$message[7][2]="Statistieken van";
$message[8][2]="Eerste bezoek";
$message[9][2]="Laatste bezoek";
$message[10][2]="Aantal boezoeken";
$message[11][2]="Unieke bezoekers";
$message[12][2]="Bezoek";
$message[13][2]="Trefwoord";
$message[14][2]="Zoek";
$message[15][2]="Procent";
$message[16][2]="Opsomming";
$message[17][2]="Domeinen/Landen";
$message[18][2]="Bezoekers";
$message[19][2]="Pagina's/URL";
$message[20][2]="Uren";
$message[21][2]="Browsers";
$message[22][2]="HTTP Foutmeldingen";
$message[23][2]="Verwijzing";
$message[24][2]="Zoek trefwoorden";
$message[25][2]="Bezoekers domeinen/landen";
$message[26][2]="hosts";
$message[27][2]="pagina's";
$message[28][2]="verschillende pagina's";
$message[29][2]="Toegang";
$message[30][2]="Andere woorden";
$message[31][2]="Gebruikte browsers";
$message[32][2]="HTTP foutmelding codes";
$message[33][2]="Netscape versies";
$message[34][2]="MS Internet Explorer versies";
$message[35][2]="Gebruikt OS";
$message[36][2]="Verbinding naar site vanaf";
$message[37][2]="Herkomst";
$message[38][2]="Direkt adres / Bookmarks";
$message[39][2]="Link vanuit een nieuwsgroep";
$message[40][2]="Link vanuit een Internet Zoek Machine";
$message[41][2]="Link vanuit een externe pagina (andere web sites behalve zoek machines)";
$message[42][2]="Link vanuit een interne pagina (andere pagina van dezelfde site)";
$message[43][2]="gebruikte trefwoorden bij zoek machines";
$message[44][2]="Kb";
$message[45][2]="niet vertaald IP Adres";
$message[46][2]="Onbekend OS (Referer veld)";
$message[47][2]="Verplicht maar niet gvonden URLs (HTTP code 404)";
$message[48][2]="IP Adres";
$message[49][2]="Fout Hits";
$message[50][2]="Onbekende browsers (Referer veld)";
$message[51][2]="Bezoekende robots";
$message[52][2]="bezoeken/bezoeker";
$message[53][2]="Robots/Spiders bezoekers";
$message[54][2]="Gratis realtime logbestand analyzer voor geavanceerde web statistieken";
$message[55][2]="van";
$message[56][2]="Pagina's";
$message[57][2]="Hits";
$message[58][2]="Versies";
$message[59][2]="OS";
$message[60][2]="Jan";
$message[61][2]="Feb";
$message[62][2]="Mar";
$message[63][2]="Apr";
$message[64][2]="May";
$message[65][2]="Jun";
$message[66][2]="Jul";
$message[67][2]="Aug";
$message[68][2]="Sep";
$message[69][2]="Oct";
$message[70][2]="Nov";
$message[71][2]="Dec";
# Spanish
$message[0][3]="Desconocido";
$message[1][3]="Dirección IP desconocida";
$message[2][3]="Otros visitantes";
$message[3][3]="Vea detalles";
$message[4][3]="Día";
$message[5][3]="Mes";
$message[6][3]="Año";
$message[7][3]="Estadísticas del sitio";
$message[8][3]="Primera visita";
$message[9][3]="Última visita";
$message[10][3]="Número de visitas";
$message[11][3]="No. de visitantes distintos";
$message[12][3]="Visita";
$message[13][3]="Palabra clave (keyword)";
$message[14][3]="Búsquedas";
$message[15][3]="Porciento";
$message[16][3]="Resumen de tráfico";
$message[17][3]="Dominios/Países";
$message[18][3]="Visitantes";
$message[19][3]="Páginas/URLs";
$message[20][3]="Horas";
$message[21][3]="Navegadores";
$message[22][3]="Errores";
$message[23][3]="Enlaces (Links)";
$message[24][3]="Palabra clave de búsqueda";
$message[25][3]="Dominios/Países de visitantes";
$message[26][3]="servidores";
$message[27][3]="páginas";
$message[28][3]="páginas diferentes";
$message[29][3]="Acceso";
$message[30][3]="Otras palabras";
$message[31][3]="Navegadores utilizados";
$message[32][3]="Códigos de Errores de Protocolo HTTP";
$message[33][3]="Versiones de Netscape";
$message[34][3]="Versiones de MS Internet Explorer";
$message[35][3]="Sistemas Operativos utilizados";
$message[36][3]="Enlaces (links) al sitio";
$message[37][3]="Origen de enlace";
$message[38][3]="Dirección directa / Favoritos";
$message[39][3]="Enlaces desde Newsgroups";
$message[40][3]="Enlaces desde algún motor de búsqueda";
$message[41][3]="Enlaces desde páginas externas (exeptuando motores de búsqueda)";
$message[42][3]="Enlaces desde páginas internas (otras páginas del sitio)";
$message[43][3]="Palabras clave utilizada por el motor de búsqueda";
$message[44][3]="Kb";
$message[45][3]="Dirección IP no identificada";
$message[46][3]="Sistema Operativo desconocido (campo de referencia)";
$message[47][3]="URLs necesarios pero no encontados (código 404 de protocolo HTTP)";
$message[48][3]="Dirección IP";
$message[49][3]="Hits erróneos";
$message[50][3]="Navegadores desconocidos (campo de referencia)";
$message[51][3]="Visitas de Robots";
$message[52][3]="Visitas/Visitante";
$message[53][3]="Visitas de Robots/Spiders (indexadores)";
$message[54][3]="Analizador gratuito de 'log' para estadísticas Web avanzadas";
$message[55][3]="de";
$message[56][3]="Páginas";
$message[57][3]="Hits";
$message[58][3]="Versiones";
$message[59][3]="Sistema Operativo";
$message[60][3]="Ene";
$message[61][3]="Feb";
$message[62][3]="Mar";
$message[63][3]="Abr";
$message[64][3]="May";
$message[65][3]="Jun";
$message[66][3]="Jul";
$message[67][3]="Ago";
$message[68][3]="Sep";
$message[69][3]="Oct";
$message[70][3]="Nov";
$message[71][3]="Dic";
# Italian
$message[0][4]="Sconosciuto";
$message[1][4]="Sconosciuto (ip non risolto)";
$message[2][4]="Altri visitatori";
$message[3][4]="Vedi dettagli";
$message[4][4]="Giorno";
$message[5][4]="Mese";
$message[6][4]="Anno";
$message[7][4]="Statistiche di";
$message[8][4]="Prima visita";
$message[9][4]="Ultima visita";
$message[10][4]="Numero di visite";
$message[11][4]="Numero di visitatori diverse";
$message[12][4]="Visite";
$message[13][4]="Parole chiave";
$message[14][4]="Ricerche";
$message[15][4]="Percentuali";
$message[16][4]="Riassunto del traffico";
$message[17][4]="Domini/Nazioni";
$message[18][4]="Visitatori";
$message[19][4]="Pagine/URL";
$message[20][4]="Ore";
$message[21][4]="Browsers";
$message[22][4]="Errori HTTP";
$message[23][4]="Origine/Riferimenti";
$message[24][4]="Ricerche Parole chiave";
$message[25][4]="Visitatori per domini/nazioni";
$message[26][4]="hosts";
$message[27][4]="pagine";
$message[28][4]="pagine diverse";
$message[29][4]="Accessi";
$message[30][4]="Altre parole";
$message[31][4]="Browser usati";
$message[32][4]="Codici di errori HTTP";
$message[33][4]="Netscape versione";
$message[34][4]="MS Internet Explorer versione";
$message[35][4]="Sistemi operativi usati";
$message[36][4]="Connesso al sito da";
$message[37][4]="Origine";
$message[38][4]="Indirizzo diretto / segnalibro";
$message[39][4]="Link da un Newsgroup";
$message[40][4]="Link da un motore di ricerca";
$message[41][4]="Link da una pagina esterna (altri siti eccetto i motori di ricerca)";
$message[42][4]="Link da una pagina interna (altre pagine dello stesso sito)";
$message[43][4]="Parole chiave usate dai motori di ricerca";
$message[44][4]="Kb";
$message[45][4]="Indirizzi IP non risolti";
$message[46][4]="Sistemi operativi non conosciuti (Campo di riferimento)";
$message[47][4]="Richiesto un URL ma non trovato (HTTP codice 404)";
$message[48][4]="Indirizzo IP";
$message[49][4]="Errori Punteggio";
$message[50][4]="Browser sconosciuti (Campo di riferimento)";
$message[51][4]="Visite di robots";
$message[52][4]="visite/visitatori";
$message[53][4]="Visite di Robots/Spiders";
$message[54][4]="Analizzatore gratuito in tempo reale dei file di log per statistiche avanzate";
$message[55][4]="it";
$message[56][4]="Pagine";
$message[57][4]="Hits";
$message[58][4]="Versioni";
$message[59][4]="Sistema Operativo";
$message[60][4]="Genn";
$message[61][4]="Febb";
$message[62][4]="Mar";
$message[63][4]="Apr";
$message[64][4]="Magg";
$message[65][4]="Giu";
$message[66][4]="Lug";
$message[67][4]="Ago";
$message[68][4]="Sep";
$message[69][4]="Oct";
$message[70][4]="Nov";
$message[71][4]="Dic";
# German
$message[0][5]="Unbekannt";
$message[1][5]="IP konnte nicht aufgeloest werden";
$message[2][5]="Sonstige Besucher";
$message[3][5]="Details";
$message[4][5]="Tag";
$message[5][5]="Monat";
$message[6][5]="Jahr";
$message[7][5]="Statistik ueber";
$message[8][5]="Erster Besuch";
$message[9][5]="Letzter Besuch";
$message[10][5]="Anzahl der Besucher";
$message[11][5]="Verschiedene Besucher";
$message[12][5]="Besuch";
$message[13][5]="Suchbegriffe";
$message[14][5]="Haeufigkeit";
$message[15][5]="Prozent";
$message[16][5]="Verkehr Gesamt";
$message[17][5]="Laender";
$message[18][5]="Besucher";
$message[19][5]="Besuchte Seiten";
$message[20][5]="Durchschn. Tagesverlauf";
$message[21][5]="Browser";
$message[22][5]="HTTP Status";
$message[23][5]="Referrer";
$message[24][5]="Suchbegriffe";
$message[25][5]="Laender aus denen die Besucher kamen";
$message[26][5]="Hosts";
$message[27][5]="Seiten";
$message[28][5]="Unterschiedliche Seiten";
$message[29][5]="Zugriffe";
$message[30][5]="Weitere Suchbegriffe";
$message[31][5]="Verwendete Browser";
$message[32][5]="HTTP Status Meldungen";
$message[33][5]="Netscape Versionen
";
$message[34][5]="MS Internet Explorer Versionen
";
$message[35][5]="Betriebssysteme";
$message[36][5]="Woher die Besucher kamen";
$message[37][5]="Ursprung";
$message[38][5]="Direkter Zugriff / Bookmarks";
$message[39][5]="Link von einer Newsgroup";
$message[40][5]="Link von einer Suchmaschine";
$message[41][5]="Link von einer ext. Seite (nicht Suchmaschine!)";
$message[42][5]="Link von einer Seite innerhalb der Web Site";
$message[43][5]="Suchbegriffen (Suchmaschinen)";
$message[44][5]="Kb";
$message[45][5]="Unaufgeloeste IP Adresse";
$message[46][5]="Unbekanntes Betriebssystem [Referer]";
$message[47][5]="Nicht auffindbare Seiten [Error 404]";
$message[48][5]="IP Addresse";
$message[49][5]="Fehler / Hits";
$message[50][5]="Unbekannter Browser [Referer]";
$message[51][5]="Besuche von Robots / Spider";
$message[52][5]="Besuche / Besucher";
$message[53][5]="Besuche von Robots / Spider";
$message[54][5]="Programm zur erweiterten Echtzeitanalyse von Log-Dateien";
$message[55][5]="von";
$message[56][5]="Seiten";
$message[57][5]="Hits";
$message[58][5]="Ausführungen";
$message[59][5]="Unbekanntes Betriebssystem";
$message[60][5]="Jan";
$message[61][5]="Feb";
$message[62][5]="Mar";
$message[63][5]="Abr";
$message[64][5]="Mai";
$message[65][5]="Jun";
$message[66][5]="Juli";
$message[67][5]="Aug";
$message[68][5]="Sep";
$message[69][5]="Oct";
$message[70][5]="Nov";
$message[71][5]="Dez";
# Polish
$PageCode[6]="";
$message[0][6]="Nieznany";
$message[1][6]="Nieznany (brak odwzorowania IP w DNS)";
$message[2][6]="Inni go¶cie";
$message[3][6]="Szczegó³y...";
$message[4][6]="Dzieñ";
$message[5][6]="Miesi±c";
$message[6][6]="Rok";
$message[7][6]="Statystyki";
$message[8][6]="Pierwsza wizyta";
$message[9][6]="Ostatnia wizyta";
$message[10][6]="Ilo¶æ wizyt";
$message[11][6]="Unikalnych go¶ci";
$message[12][6]="wizyt";
$message[13][6]="S³owo kluczowe";
$message[14][6]="Szukanych";
$message[15][6]="Procent";
$message[16][6]="Podsumowanie";
$message[17][6]="Domeny/Kraje";
$message[18][6]="Go¶cie";
$message[19][6]="Stron/URL-i";
$message[20][6]="Rozk³ad godzinny";
$message[21][6]="Przegl±darki";
$message[22][6]="B³êdy HTTP";
$message[23][6]="Referenci";
$message[24][6]="Wyszukiwarki - s³owa kluczowe";
$message[25][6]="Domeny/narodowo¶æ Internautów";
$message[26][6]="hosty";
$message[27][6]="strony";
$message[28][6]="ró¿nych stron";
$message[29][6]="Dostêp";
$message[30][6]="Inne s³owa";
$message[31][6]="Przegl±darki";
$message[32][6]="Kody b³êdów HTTP";
$message[33][6]="Wersje Netscape'a
";
$message[34][6]="Wersje MS IE
";
$message[35][6]="Systemy operacyjne";
$message[36][6]="¬ród³a po³±czeñ";
$message[37][6]="Pochodzenie";
$message[38][6]="Dostêp bezpo¶redni lub z Ulubionych/Bookmarków";
$message[39][6]="Link z grupy dyskusyjnej";
$message[40][6]="Link z wyszukiwarki internetowej";
$message[41][6]="Link zewnêtrzny (inne strony z wy³±czeniem wyszukiwarek)";
$message[42][6]="Link wewnêtrzny (z serwera na którym jest strona)";
$message[43][6]="S³owa kluczowe u¿yte w wyszukiwarkach internetowcyh";
$message[44][6]="Kb";
$message[45][6]="Nieznany (brak odwzorowania IP w DNS)";
$message[46][6]="Nieznany system operacyjny";
$message[47][6]="Nie znaleziony (B³±d HTTP 404)";
$message[48][6]="Adres IP";
$message[49][6]="Ilo¶æ b³êdów";
$message[50][6]="Nieznane przegl±darki";
$message[51][6]="Roboty sieciowe";
$message[52][6]="wizyt/go¶ci";
$message[53][6]="Roboty sieciowe";
$message[54][6]="Darmowy analizator logów on-line";
$message[55][6]="";
$message[56][6]="Pages";
$message[57][6]="Hits";
$message[58][6]="Versions";
$message[59][6]="Systemy operacyjne";
$message[60][6]="Jan";
$message[61][6]="Fev";
$message[62][6]="Luty";
$message[63][6]="Kwiecien";
$message[64][6]="Maj";
$message[65][6]="Jun";
$message[66][6]="Jul";
$message[67][6]="Ago";
$message[68][6]="Sep";
$message[69][6]="Oct";
$message[70][6]="Nov";
$message[71][6]="Dic";
# ---------- Browser lists ----------------
# ("browser id in lower case", "browser text")
%BrowsersHash = (
"netscape","defined_later",
"msie","defined_later",
"libwww","LibWWW",
"wget","Wget",
"lynx","Lynx",
"opera","Opera",
"22acidownload","22AciDownload",
"aol\\-iweng","AOL-Iweng",
"amigavoyager","AmigaVoyager",
"antfresco","ANT Fresco",
"bpftp","BPFTP",
"cyberdog","Cyberdog",
"downloadagent","DownloadAgent",
"ecatch", "eCatch",
"emailsiphon","EmailSiphon",
"friendlyspider","FriendlySpider",
"getright","GetRight",
"headdump","HeadDump",
"hotjava","Sun HotJava",
"ibrowse","IBrowse",
"intergo","InterGO",
"konqueror","Konqueror",
"linemodebrowser","W3C Line Mode Browser",
"lotus-notes","Lotus Notes web client",
"macweb","MacWeb",
"ncsa_mosaic","NCSA Mosaic",
"nutscrape", "Nutscrape",
"mspie","MS Pocket Internet Explorer",
"msfrontpageexpress","MS FrontPage Express",
"real","RealAudio or compatible player",
"teleport","TelePort Pro (Site grabber)",
"tzgeturl","TZGETURL",
"viking","Viking",
"webcapture","Acrobat (Site grabber)",
"webfetcher","WebFetcher",
"webtv","WebTV browser",
"webexplorer","IBM-WebExplorer",
"webmirror","WebMirror",
"webvcr","WebVCR",
"webzip","WebZIP"
);
# ---------- OS lists --------------------
# ("os id in lower case","os text")
%OSHash = (
"win16","Windows 3.xx",
"win95","Windows 95",
"win98","Windows 98",
"winnt","Windows NT / Windows 2000",
"wince","Windows CE",
"cp/m","CPM",
"sunos","Sun Solaris",
"irix","Irix",
"macintosh","MacOS",
"unix","Unknown Unix system",
"linux","Linux",
"os/2","Warp OS/2",
"osf","OSF Unix",
"crayos","CrayOS",
"amigaos","AmigaOS",
"hp-ux","HP Unix",
"riscos","Acorn RISC OS",
"aix","Aix",
"netbsd","NetBSD",
"bsdi","BSDi",
"freebsd","FreeBSD",
"webtv","WebTV"
);
# ("text that match in log after changing space and plus into underscore","osid")
%OSAlias = (
"windows_98","win98",
"windows_nt","winnt",
"win32","winnt",
"windows_95","win95",
"windows_31","win16",
"windows;i;16","win16",
"windowsce","wince",
"mac_powerpc","macintosh",
"mac_ppc","macintosh",
"mac_68000","macintosh",
"macweb","macintosh"
);
# ---------- Robot lists ------------
# List can be found at http://info.webcrawler.com/mak/projects/robots/active.html and the next command show how to generate tab list from this file:
# cat robotslist.txt | sed 's/:/ /' | awk ' /robot-id/ { name=tolower($2); } /robot-name/ { print "\""name"\", \""$0"\"," } ' | sed 's/robot-name *//g' > file
# Rem: To avoid bad detection, some robots id were removed from this list:
# - Robots with ID of 2 letters only
# - Robot called "webs"
# Rem: directhit is changed in direct_hit (it's real id)
%RobotHash = (
"acme.spider", "Acme.Spider",
"ahoythehomepagefinder", "Ahoy! The Homepage Finder",
"alkaline", "Alkaline",
"appie", "Walhello appie",
"arachnophilia", "Arachnophilia",
"architext", "ArchitextSpider",
"aretha", "Aretha",
"ariadne", "ARIADNE",
"aspider", "ASpider (Associative Spider)",
"atn.txt", "ATN Worldwide",
"atomz", "Atomz.com Search Robot",
"auresys", "AURESYS",
"backrub", "BackRub",
"bigbrother", "Big Brother",
"bjaaland", "Bjaaland",
"blackwidow", "BlackWidow",
"blindekuh", "Die Blinde Kuh",
"bloodhound", "Bloodhound",
"brightnet", "bright.net caching robot",
"bspider", "BSpider",
"cactvschemistryspider", "CACTVS Chemistry Spider",
"calif", "Calif",
"cassandra", "Cassandra",
"cgireader", "Digimarc Marcspider/CGI",
"checkbot", "Checkbot",
"churl", "churl",
"cmc", "CMC/0.01",
"collective", "Collective",
"combine", "Combine System",
"conceptbot", "Conceptbot",
"core", "Web Core / Roots",
"cshkust", "CS-HKUST WISE: WWW Index and Search Engine",
"cusco", "Cusco",
"cyberspyder", "CyberSpyder Link Test",
"deweb", "DeWeb(c) Katalog/Index",
"dienstspider", "DienstSpider",
"diibot", "Digital Integrity Robot",
"direct_hit", "Direct Hit Grabber",
"dnabot", "DNAbot",
"download_express", "DownLoad Express",
"dragonbot", "DragonBot",
"dwcp", "DWCP (Dridus' Web Cataloging Project)",
"ebiness", "EbiNess",
"eit", "EIT Link Verifier Robot",
"emacs", "Emacs-w3 Search Engine",
"emcspider", "ananzi",
"esther", "Esther",
"evliyacelebi", "Evliya Celebi",
"nzexplorer", "nzexplorer",
"fdse", "Fluid Dynamics Search Engine robot",
"felix", " Felix IDE",
"ferret", "Wild Ferret Web Hopper #1, #2, #3",
"fetchrover", "FetchRover",
"fido", "fido",
"finnish", "Hämähäkki",
"fireball", "KIT-Fireball",
"fish", "Fish search",
"fouineur", "Fouineur",
"francoroute", "Robot Francoroute",
"freecrawl", "Freecrawl",
"funnelweb", "FunnelWeb",
"gazz", "gazz",
"gcreep", "GCreep",
"getbot", "GetBot",
"geturl", "GetURL",
"golem", "Golem",
"googlebot", "Googlebot",
"grapnel", "Grapnel/0.01 Experiment",
"griffon", "Griffon ",
"gromit", "Gromit",
"gulliver", "Northern Light Gulliver",
"hambot", "HamBot",
"harvest", "Harvest",
"havindex", "havIndex",
"hometown", "Hometown Spider Pro",
"wired-digital", "Wired Digital",
"htdig", "ht://Dig",
"htmlgobble", "HTMLgobble",
"hyperdecontextualizer", "Hyper-Decontextualizer",
"ibm", "IBM_Planetwide",
"iconoclast", "Popular Iconoclast",
"ilse", "Ingrid",
"imagelock", "Imagelock ",
"incywincy", "IncyWincy",
"informant", "Informant",
"infoseek", "InfoSeek Robot 1.0",
"infoseeksidewinder", "Infoseek Sidewinder",
"infospider", "InfoSpiders",
"inspectorwww", "Inspector Web",
"intelliagent", "IntelliAgent",
"iron33", "Iron33",
"israelisearch", "Israeli-search",
"javabee", "JavaBee",
"jcrawler", "JCrawler",
"jeeves", "Jeeves",
"jobot", "Jobot",
"joebot", "JoeBot",
"jubii", "The Jubii Indexing Robot",
"jumpstation", "JumpStation",
"katipo", "Katipo",
"kdd", "KDD-Explorer",
"kilroy", "Kilroy",
"ko_yappo_robot", "KO_Yappo_Robot",
"labelgrabber.txt", "LabelGrabber",
"larbin", "larbin",
"legs", "legs",
"linkscan", "LinkScan",
"linkwalker", "LinkWalker",
"lockon", "Lockon",
"logo_gif", "logo.gif Crawler",
"lycos", "Lycos",
"macworm", "Mac WWWWorm",
"magpie", "Magpie",
"mediafox", "MediaFox",
"merzscope", "MerzScope",
"meshexplorer", " NEC-MeshExplorer",
"mindcrawler", "MindCrawler",
"moget", "moget",
"momspider", "MOMspider",
"monster", "Monster",
"motor", "Motor",
"muscatferret", "Muscat Ferret",
"mwdsearch", "Mwd.Search",
"myweb", "Internet Shinchakubin",
"netcarta", "NetCarta WebMap Engine",
"netmechanic", "NetMechanic",
"netscoop", "NetScoop",
"newscan-online", "newscan-online",
"nhse", "NHSE Web Forager",
"nomad", "Nomad",
"northstar", "The NorthStar Robot",
"occam", "Occam",
"octopus", "HKU WWW Octopus",
"orb_search", "Orb Search",
"packrat", "Pack Rat",
"pageboy", "PageBoy",
"parasite", "ParaSite",
"patric", "Patric",
"perignator", "The Peregrinator",
"perlcrawler", "PerlCrawler 1.0",
"phantom", "Phantom",
"piltdownman", "PiltdownMan",
"pioneer", "Pioneer",
"pitkow", "html_analyzer",
"pjspider", "Portal Juice Spider",
"pka", "PGP Key Agent",
"plumtreewebaccessor", "PlumtreeWebAccessor ",
"poppi", "Poppi",
"portalb", "PortalB Spider",
"puu", "GetterroboPlus Puu",
"python", "The Python Robot",
"raven", "Raven Search",
"rbse", "RBSE Spider",
"resumerobot", "Resume Robot",
"rhcs", "RoadHouse Crawling System",
"roadrunner", "Road Runner: The ImageScape Robot",
"robbie", "Robbie the Robot",
"robi", "ComputingSite Robi/1.0",
"roverbot", "Roverbot",
"safetynetrobot", "SafetyNet Robot",
"scooter", "Scooter",
"search_au", "Search.Aus-AU.COM",
"searchprocess", "SearchProcess",
"senrigan", "Senrigan",
"sgscout", "SG-Scout",
"shaggy", "ShagSeeker",
"shaihulud", "Shai'Hulud",
"sift", "Sift",
"simbot", "Simmany Robot Ver1.0",
"site-valet", "Site Valet",
"sitegrabber", "Open Text Index Robot",
"sitetech", "SiteTech-Rover",
"slurp", "Inktomi Slurp",
"smartspider", "Smart Spider",
"snooper", "Snooper",
"solbot", "Solbot",
"spanner", "Spanner",
"speedy", "Speedy Spider",
"spider_monkey", "spider_monkey",
"spiderbot", "SpiderBot",
"spiderman", "SpiderMan",
"spry", "Spry Wizard Robot",
"ssearcher", "Site Searcher",
"suke", "Suke",
"sven", "Sven",
"tach_bw", "TACH Black Widow",
"tarantula", "Tarantula",
"tarspider", "tarspider",
"tcl", "Tcl W3 Robot",
"techbot", "TechBOT",
"templeton", "Templeton",
"titin", "TitIn",
"titan", "TITAN",
"tkwww", "The TkWWW Robot",
"tlspider", "TLSpider",
"ucsd", "UCSD Crawl",
"udmsearch", "UdmSearch",
"urlck", "URL Check",
"valkyrie", "Valkyrie",
"victoria", "Victoria",
"visionsearch", "vision-search",
"voyager", "Voyager",
"vwbot", "VWbot",
"w3index", "The NWI Robot",
"w3m2", "W3M2",
"wanderer", "the World Wide Web Wanderer",
"webbandit", "WebBandit Web Spider",
"webcatcher", "WebCatcher",
"webcopy", "WebCopy",
"webfetcher", "webfetcher",
"webfoot", "The Webfoot Robot",
"weblayers", "Weblayers",
"weblinker", "WebLinker",
"webmirror", "WebMirror",
"webmoose", "The Web Moose",
"webquest", "WebQuest",
"webreader", "Digimarc MarcSpider",
"webreaper", "WebReaper",
"websnarf", "Websnarf",
"webspider", "WebSpider",
"webvac", "WebVac",
"webwalk", "webwalk",
"webwalker", "WebWalker",
"webwatch", "WebWatch",
"wget", "Wget",
"whowhere", "WhoWhere Robot",
"wmir", "w3mir",
"wolp", "WebStolperer",
"wombat", "The Web Wombat ",
"worm", "The World Wide Web Worm",
"wwwc", "WWWC Ver 0.2.5",
"wz101", "WebZinger",
"xget", "XGET",
"nederland.zoek", "Nederland.zoek",
# Not declared robots
"antibot", "Antibot (Not referenced robot)",
"daviesbot", "DaviesBot (Not referenced robot)",
"ezresult", "Ezresult (Not referenced robot)",
"fast-webcrawler", "Fast-Webcrawler (Not referenced robot)",
"jennybot", "JennyBot (Not referenced robot)",
"justview", "JustView (Not referenced robot)",
"mercator", "Mercator (Not referenced robot)",
#"msiecrawler", "MSIECrawler (Not referenced robot)", MSIECrawler seems to be a grabber not a robot
"perman surfer", "Perman surfer (Not referenced robot)",
"unlost_web_crawler", "Unlost_Web_Crawler (Not referenced robot)",
"webbase", "WebBase (Not referenced robot)",
# Supposed to be robots
"webcompass", "webcompass (Not referenced robot)",
"digout4u", "digout4u (Not referenced robot)",
"echo", "EchO! (Not referenced robot)",
"voila", "Voila (Not referenced robot)",
"boris", "Boris (Not referenced robot)",
"ultraseek", "Ultraseek (Not referenced robot)",
"ia_archiver", "ia_archiver (Not referenced robot)",
# Generic ID
"robot", "Unknown robot (Not referenced robot)"
);
# ---------- Domains --------------------
%DomainsHash = (
"localhost","localhost",
"ad","¥¢¥ó¥É¥é","ae","¥¢¥é¥Ö¼óĹ¹ñϢˮ","af","¥¢¥Õ¥¬¥Ë¥¹¥¿¥ó","ag",
"¥¢¥ó¥Æ¥£¥°¥¢¡¼¥Ð¡¼¥Ö¡¼¥À","ai","¥¢¥ó¥°¥¤¥é","al","¥¢¥ë¥Ð¥Ë¥¢","am",
"¥¢¥ë¥á¥Ë¥¢","an","¥ª¥é¥ó¥ÀÎÎ¥¢¥ó¥Æ¥£¥ë","ao","¥¢¥ó¥´¥é","aq",
"Æî¶ËÂçΦ","ar","¥¢¥ë¥¼¥ó¥Á¥ó","arpa","¥¢¡¼¥Ñ¥Í¥Ã¥È","as",
"¥¢¥á¥ê¥«ÎÎ¥µ¥â¥¢","at","¥ª¡¼¥¹¥È¥ê¥¢","au","¥ª¡¼¥¹¥È¥é¥ê¥¢","aw","¥¢¥ë¡¼¥Ð","az",
"¥¢¥¼¥ë¥Ð¥¤¥¸¥ã¥ó","ba","¥Ü¥¹¥Ë¥¢¥Ø¥ë¥Ä¥§¥´¥ô¥£¥Ê","bb","¥Ð¥ë¥Ð¥É¥¹","bd",
"¥Ð¥ó¥°¥é¥Ç¥£¥Ã¥·¥å","be","¥Ù¥ë¥®¡¼","bf","Burkina Faso","bg","¥Ö¥ë¥¬¥ê¥¢",
"bh","¥Ð¡¼¥ì¡¼¥ó","bi","¥Ö¥ë¥ó¥Ç¥£","bj","¥Ù¥Ë¥ó","bm","¥Ð¡¼¥ß¥å¡¼¥ÀÅç","bn",
"¥Ö¥ë¥Í¥¤","bo","¥Ü¥ê¥Ó¥¢","br","¥Ö¥é¥¸¥ë","bs","¥Ð¥Ï¥Þ",
"bt","¥Ö¡¼¥¿¥ó","bv","Bouvet Island","bw","¥Ü¥Ä¥ï¥Ê","by","¥Ù¥é¥ë¡¼¥·",
"bz","¥Ù¥ê¡¼¥º","ca","¥«¥Ê¥À","cc","¥³¥³¥¹½ôÅç","cf",
"Ãæ±û¥¢¥Õ¥ê¥«¶¦Ï¹ñ","cg","¥³¥ó¥´","ch","¥¹¥¤¥¹","ci",
"¥³¡¼¥È¥Ç¥£¥ô¥©¥¢¡¼¥ë","ck","¥¯¥Ã¥¯½ôÅç","cl","¥Á¥ê","cm","¥«¥á¥ë¡¼¥ó",
"cn","Ãæ¹ñ","co","¥³¥í¥ó¥Ó¥¢","com","Commercial","cr","¥³¥¹¥¿¥ê¥«",
"cs","¥Á¥§¥³¥¹¥í¥Ð¥¥¢","cu","¥¥å¡¼¥Ð","cv","¥«¥Ü ¥ô¥§¥ë¥Ç","cx",
"¥¯¥ê¥¹¥Þ¥¹Åç","cy","¥¥×¥í¥¹","cz","¥Á¥§¥³¶¦Ï¹ñ","de","¥É¥¤¥Ä",
"dj","¥¸¥Ö¥Æ¥£","dk","¥Ç¥ó¥Þ¡¼¥¯","dm","¥É¥ß¥Ë¥«","do","¥É¥ß¥Ë¥«¶¦Ï¹ñ",
"dz","¥¢¥ë¥¸¥§¥ê¥¢","ec","¥¨¥¯¥¢¥É¥ë","edu","ÊÆ¹ñ¶µ°é´ØÏ¢","ee","¥¨¥¹¥È¥Ë¥¢",
"eg","¥¨¥¸¥×¥È","eh","À¾¥µ¥Ï¥é","es","¥¹¥Ú¥¤¥ó","et","¥¨¥Æ¥£¥ª¥Ô¥¢","fi","¥Õ¥£¥ó¥é¥ó¥É","fj","¥Õ¥£¡¼¥¸¡¼","fk",
"¥Õ¥©¡¼¥¯¥é¥ó¥É½ôÅç","fm","¥ß¥¯¥í¥Í¥·¥¢","fo","Faroe Islands",
"fr","¥Õ¥é¥ó¥¹","fx","France (European Territory)","ga","¥¬¥Ü¥ó","gb",
"¥¤¥®¥ê¥¹","gd","¥°¥é¥Ê¥À","ge","¥°¥ë¥¸¥¢","gf","¥¬¥¤¥¢¥Ê?","gh","¥¬¡¼¥Ê","gi","¥¸¥Ö¥é¥ë¥À¥ë",
"gl","¥°¥ê¡¼¥ó¥é¥ó¥É","gm","¥¬¥ó¥Ó¥¢","gn","¥®¥Ë¥¢","gov","ÊÆ¹ñÀ¯ÉÜ","gp","¥Õ¥é¥ó¥¹ÎÎ¥°¥¢¥É¥ë¡¼¥×","gq",
"ÀÖÆ»¥®¥Ë¥¢","gr","¥®¥ê¥·¥ã","gs","S. Georgia & S. Sandwich Isls.",
"gt","¥°¥¢¥Æ¥Þ¥é","gu","ÊÆ¹ñÎÎ¥°¥¢¥à","gw","¥®¥Ë¥¢ ¥Ó¥µ¥¦","gy","¥¬¥¤¥¢¥Ê",
"hk","¹á¹Á","hm","Heard and McDonald Islands","hn","¥Û¥ó¥Ç¥å¥é¥¹","hr",
"¥¯¥í¥¢¥Á¥¢","ht","¥Ï¥¤¥Á","hu","¥Ï¥ó¥¬¥ê¡¼","id","¥¤¥ó¥É¥Í¥·¥¢","ie","¥¢¥¤¥ë¥é¥ó¥É","il","¥¤¥¹¥é¥¨¥ë",
"in","¥¤¥ó¥É","int","International","io","¥¤¥®¥ê¥¹ÎÎ¥¤¥ó¥ÉÍο¢Ì±ÃÏ",
"iq","¥¤¥é¥¯","ir","¥¤¥é¥ó","is","¥¢¥¤¥¹¥é¥ó¥É","it","¥¤¥¿¥ê¥¢","jm",
"¥¸¥ã¥Þ¥¤¥«","jo","¥è¥ë¥À¥ó","jp","ÆüËÜ","ke","¥±¥Ë¥ä","kg","¥¥ë¥®¥¹¥¿¥ó",
"kh","¥³¥í¥ó¥Ó¥¢","ki","¥¥ê¥Ð¥¹","km","¥³¥â¥í","kn","¥»¥ó¥È¥¥Ã¥Ä¥Í¥ô¥£¥¹",
"kp","ËÌÄ«Á¯","kr","´Ú¹ñ","kw","¥¯¥¦¥§¡¼¥È","ky",
"Cayman Islands","kz","¥«¥¶¥Õ¥¹¥¿¥ó","la","¥é¥ª¥¹","lb","¥ì¥Ð¥Î¥ó","lc","¥»¥ó¥È¥ë¥·¥¢",
"li","¥ê¥Ò¥Æ¥ó¥·¥å¥¿¥¤¥ó","lk","¥¹¥ê¥é¥ó¥«","lr","¥ê¥Ù¥ê¥¢","ls","¥ì¥½¥È","lt","¥ê¥È¥¢¥Ë¥¢",
"lu","¥ë¥¯¥»¥ó¥Ö¥ë¥°","lv","¥é¥È¥ô¥£¥¢","ly","¥ê¥Ó¥¢","ma","¥â¥í¥Ã¥³","mc","¥â¥Ê¥³",
"md","¥â¥ë¥À¥ô¥£¥¢","mg","¥Þ¥À¥¬¥¹¥«¥ë","mh","¥Þ¡¼¥·¥ã¥ë½ôÅç","mil","ÊÆ·³","mk",
"¥Þ¥±¥É¥Ë¥¢","ml","¥Þ¥ê","mm","¥ß¥ã¥ó¥Þ¡¼","mn","¥â¥ó¥´¥ë","mo","¥Þ¥«¥ª",
"mp","Northern Mariana Islands","mq","¥Õ¥é¥ó¥¹ÎÎ¥Þ¥ë¥Æ¥£¥Ë¥¯","mr","¥â¡¼¥ê¥¿¥Ë¥¢",
"ms","¥â¥ó¥È¥»¥é¥È","mt","¥Þ¥ë¥¿","mu","¥â¡¼¥ê¥·¥ã¥¹","mv","¥â¥ë¥Ç¥£¥Ö","mw",
"¥Þ¥é¥¦¥£","mx","¥á¥¥·¥³","my","¥Þ¥ì¡¼¥·¥¢","mz","Mozambique","na","¥Ê¥ß¥Ó¥¢","nato","NATO",
"nc","¥Õ¥é¥ó¥¹ÎΥ˥塼¥«¥ì¥É¥Ë¥¢","ne","¥Ë¥¸¥§¡¼¥ë","net","Network","nf","¥Î¡¼¥Õ¥©¡¼¥¯Åç",
"ng","¥Ê¥¤¥¸¥§¥ê¥¢","ni","¥Ë¥«¥é¥°¥¢","nl","¥ª¥é¥ó¥À","no","¥Î¥ë¥¦¥§¡¼",
"np","¥Í¥Ñ¡¼¥ë","nr","¥Ê¥¦¥ë","nt","ÃæÎ©ÃÏÂÓ","nu","¥Ë¥¦¥¨","nz","¥Ë¥å¡¼¥¸¡¼¥é¥ó¥É","om","¥ª¥Þ¡¼¥ó","org",
"ÊÆ¹ñÈó±ÄÍøÁÈ¿¥","pa","¥Ñ¥Ê¥Þ","pe","¥Ú¥ë¡¼","pf","¥Õ¥é¥ó¥¹ÎΥݥê¥Í¥·¥¢",
"pg","¥Ñ¥×¥¢¥Ë¥å¡¼¥®¥Ë¥¢","ph","¥Õ¥£¥ê¥Ô¥ó","pk","¥Ñ¥¥¹¥¿¥ó","pl","¥Ý¡¼¥é¥ó¥É",
"pm","¥Õ¥é¥ó¥¹ÎÎ¥µ¥ó¥Ô¥¨¡¼¥ë ¥¨ ¥ß¥¯¥í¥ó","pn","Pitcairn Island","pr",
"¥×¥¨¥ë¥È¥ê¥³","pt","¥Ý¥ë¥È¥¬¥ë","pw","¥Ú¥ë¡¼","py","¥Ñ¥é¥°¥¢¥¤","qa","¥«¥¿¡¼¥ë",
"re","Reunion (French)","ro","¥ë¡¼¥Þ¥Ë¥¢","ru","¥í¥·¥¢","rw","¥ë¥ï¥ó¥À",
"sa","¥µ¥¦¥¸¥¢¥é¥Ó¥¢","sb","¥½¥í¥â¥ó½ôÅç","sc","¥»¡¼¥·¥§¥ë","sd",
"¥¹¡¼¥À¥ó","se","¥¹¥¦¥§¡¼¥Ç¥ó","sg","¥·¥ó¥¬¥Ý¡¼¥ë","sh","¥»¥ó¥È¥Ø¥ì¥Ê","si","¥¹¥í¥Ù¥Ë¥¢",
"sj","¥¹¥ô¥¡¡¼¥ë¥Ð¥ë & ¥ä¥ó¥Þ¥¤¥¨¥ó½ôÅç","sk","¥¹¥í¥ô¥¡¥¥¢","sl","¥·¥¨¥é¥ì¥ª¡¼¥Í",
"sm","¥µ¥ó¥Þ¥ê¥Î","sn","¥»¥Í¥¬¥ë","so","¥½¥Þ¥ê¥¢","sr","¥¹¥ê¥Ê¥à","st",
"¥×¥ê¥ó¥·¥Ú","su","¥½¥ô¥£¥¨¥È","sv","¥¨¥ë¥µ¥ë¥Ð¥É¥ë","sy","¥·¥ê¥¢","sz","¥¹¥ï¥¸¥é¥ó¥É","tc",
"Turks and Caicos Islands","td","¥Á¥ã¥É","tf","French Southern Territories","tg","¥È¡¼¥´",
"th","¥¿¥¤","tj","¥¿¥¸¥¥¹¥¿¥ó","tk","¥È¥±¥é¥¦","tm","¥È¥ë¥¯¥á¥Ë¥¹¥¿¥ó","tn","¥Á¥å¥Ë¥¸¥¢",
"to","¥È¥ó¥¬","tp","Åì¥Æ¥£¥â¡¼¥ë","tr","¥È¥ë¥³","tt","¥È¥ê¥Ë¥À¡¼¥É¥È¥Ð¥´","tv","¥È¥¥¥ô¥¡¥ë",
"tw","ÂæÏÑ","tz","¥¿¥ó¥¶¥Ë¥¢","ua","¥¦¥¯¥é¥¤¥Ê","ug","¥¦¥¬¥ó¥À","uk",
"¥¤¥®¥ê¥¹","um","USA Minor Outlying Islands","us","¥¢¥á¥ê¥«",
"uy","¥¦¥ë¥°¥¢¥¤","uz","¥¦¥º¥Ù¥¥¹¥¿¥ó","va","¥ô¥¡¥Æ¥£¥«¥ó»Ô¹ñ","vc",
"¥»¥ó¥È¥ô¥£¥ó¥»¥ó¥È-¥°¥ì¥Ê¥Ç¥£¥ó","ve","¥ô¥§¥Í¥º¥¨¥é","vg","±Ñ¹ñÎÎ¥ô¥¡¡¼¥¸¥ó½ôÅç",
"vi","ÊÆÎÎ¥ô¥¡¡¼¥¸¥ó½ôÅç","vn","¥ô¥§¥È¥Ê¥à","vu","¥ô¥¡¥Ì¥¢¥È¥¥","wf","¥ï¥ê¡¼ ¥¨ ¥Õ¥È¥¥¡¼¥Ê½ôÅç",
"ws","¥µ¥â¥¢","ye","¥¤¥¨¥á¥ó","yt","¥Þ¥è¥Ã¥È","yu","¥æ¡¼¥´¥¹¥é¥Ó¥¢","za","Æî¥¢¥Õ¥ê¥«",
"zm","¥¶¥ó¥Ó¥¢","zr","¥¶¥¤¡¼¥ë","zw","¥¸¥ó¥Ð¥Ö¥¨"
);
#-------------------------------------------------------
# Functions
#-------------------------------------------------------
sub html_head {
print "\n";
print "
\n";
if ($PageCode[$Lang] ne "") { print "$PageCode[$Lang]\n"; }
print "\n";
print "\n";
print "\n";
print "\n";
print "$LocalSite$message[7][$Lang]\n";
print "\n";
print "\n";
print "\n";
print "
\n";
print "AWStats
";
}
sub html_end {
$date=localtime();
print "
$date - Advanced Web Statistics $VERSION - Created by $PROG
\n";
print "
\n";
print "$HTMLEndSection\n";
print "";
print "";
}
sub tab_head {
print "
| $tab_titre |
";
}
sub tab_end {
print " | ";
print " |
\n\n";
}
sub UnescapeURL {
$_[0] =~ s/\+/ /gi;
$_[0] =~ s/%20/ /gi; #
$_[0] =~ s/%22//gi; #"
$_[0] =~ s/%26/ /gi; #&
$_[0] =~ s/%27/ /gi; #'
$_[0] =~ s/%28//gi; #(
$_[0] =~ s/%29//gi; #)
$_[0] =~ s/%2b/ /gi; #+
$_[0] =~ s/%2c/ /gi; #,
$_[0] =~ s/%2d//gi; #-
$_[0] =~ s/%2e/\./gi; #.
$_[0] =~ s/%2f/ /gi; #/
$_[0] =~ s/%3c/ /gi; #<
$_[0] =~ s/%3d/ /gi; #=
$_[0] =~ s/%3e/ /gi; #>
$_[0] =~ s/%c9/é/gi; #é maj
$_[0] =~ s/%e8/è/gi; #è
$_[0] =~ s/%e9/é/gi; #é
$_[0] =~ s/%ea/ê/gi; #ê
$_[0] =~ s/%eb/ë/gi; #ë
$_[0] =~ s/%f1/ñ/gi; #ñ
$_[0] =~ s/%f2/ò/gi; #ò
$_[0] =~ s/%f3/ó/gi; #ó
$_[0] =~ s/[0-9]//gi; # $_[0] =~ s/^[0-9]*//gi; should be better but not tested yet
$_[0] =~ s/\"//gi;
}
sub error {
print "$_[0].
\n";
if ($ENV{"GATEWAY_INTERFACE"} ne "") { print "
\n"; }
print "Setup ($FileConfig file, web server or logfile permissions) may be wrong.\n";
if ($ENV{"GATEWAY_INTERFACE"} ne "") { print "
\n"; }
print "See README.TXT for informations on how to setup $PROG.\n";
if ($ENV{"GATEWAY_INTERFACE"} ne "") { print "