⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 geoipfree.pm

📁 awstats-6.6.zip tomcat日志分析包linux
💻 PM
字号:
#!/usr/bin/perl#-----------------------------------------------------------------------------# GeoIpFree AWStats plugin# This plugin allow you to get AWStats country report with countries detected# from a Geographical database (GeoIP internal database) instead of domain# hostname suffix.#-----------------------------------------------------------------------------# Perl Required Modules: Geo::IPfree (version 0.2+)#-----------------------------------------------------------------------------# $Revision: 1.11 $ - $Author: eldy $ - $Date: 2004/05/21 21:11:52 $# <-----# ENTER HERE THE USE COMMAND FOR ALL REQUIRED PERL MODULESpush @INC, "${DIR}/plugins";if (!eval ('require "Geo/IPfree.pm";')) { return $@?"Error: $@":"Error: Need Perl module Geo::IPfree"; }# ----->use strict;no strict "refs";#-----------------------------------------------------------------------------# PLUGIN VARIABLES#-----------------------------------------------------------------------------# <-----# ENTER HERE THE MINIMUM AWSTATS VERSION REQUIRED BY YOUR PLUGIN# AND THE NAME OF ALL FUNCTIONS THE PLUGIN MANAGE.my $PluginNeedAWStatsVersion="5.5";my $PluginHooksFunctions="GetCountryCodeByAddr GetCountryCodeByName";# -----># <-----# IF YOUR PLUGIN NEED GLOBAL VARIABLES, THEY MUST BE DECLARED HERE.use vars qw/%TmpDomainLookup$gi/;# ----->#-----------------------------------------------------------------------------# PLUGIN FUNCTION: Init_pluginname#-----------------------------------------------------------------------------sub Init_geoipfree {	my $InitParams=shift;	my $checkversion=&Check_Plugin_Version($PluginNeedAWStatsVersion);	# <-----	# ENTER HERE CODE TO DO INIT PLUGIN ACTIONS	debug(" Plugin geoipfree: InitParams=$InitParams",1);	%TmpDomainLookup=();	$gi = Geo::IPfree::new();#	$gi->Faster; 	# Do not enable Faster as the Memoize module is rarely available	# ----->	return ($checkversion?$checkversion:"$PluginHooksFunctions");}#-----------------------------------------------------------------------------# PLUGIN FUNCTION: GetCountryCodeByName_pluginname# UNIQUE: YES (Only one plugin using this function can be loaded)# GetCountryCodeByName is called to translate a host name into a country name.#-----------------------------------------------------------------------------sub GetCountryCodeByName_geoipfree {    my $param="$_[0]";	# <-----	my $res=$TmpDomainLookup{$param}||'';	if (! $res) {		($res,undef)=$gi->LookUp($param);		if ($res !~ /\w\w/) { $res='ip'; }		else { $res=lc($res); }		$TmpDomainLookup{$param}=$res;		if ($Debug) { debug("  Plugin geoipfree: GetCountryCodeByName for $param: $res",5); }	}	elsif ($Debug) { debug("  Plugin geoipfree: GetCountryCodeByName for $param: Already resolved to $res",5); }	# ----->	return $res;}#-----------------------------------------------------------------------------# PLUGIN FUNCTION: GetCountryCodeByAddr_pluginname# UNIQUE: YES (Only one plugin using this function can be loaded)# GetCountryCodeByAddr is called to translate an ip into a country name.#-----------------------------------------------------------------------------sub GetCountryCodeByAddr_geoipfree {    my $param="$_[0]";	# <-----	my $res=$TmpDomainLookup{$param}||'';	if (! $res) {		($res,undef)=$gi->LookUp($param);		if ($res !~ /\w\w/) { $res='ip'; }		else { $res=lc($res); }		$TmpDomainLookup{$param}=$res;		if ($Debug) { debug("  Plugin geoipfree: GetCountryCodeByAddr for $param: $res",5); }	}	elsif ($Debug) { debug("  Plugin geoipfree: GetCountryCodeByAddr for $param: Already resolved to $res",5); }	# ----->	return $res;}1;	# Do not remove this line# Internal IP address:# 10.x.x.x# 192.168.x.x

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -