很多用虚拟主机建站的朋友都知道的,大部分虚拟主机是不提供网站日志功能的,这样网站管理员就无法掌握网站些被访问了,有些童鞋肯定会说:「你傻啊,用百度统计啊。」 其实百度统计只能统计到前台页面的访问记录,而其后台之类的页面的访问就统计不到了。其实后台页面访问的统计依然后重要,管理员可以根据这些访问记录来了解谁访问了网站的后台,发出了哪些请求?访客是否意图对网站进行攻击?所以我们要尽可能的统计所有页面的访问,并且记录访客使用哪些客户端来访问网站?访客对访问的页面发出怎样的请求?这些信息对于一个合格的网站管理员来说都是非常重要的。
下面小编就来教大家如何让 WordPress 生成网站访问日志。首先打开当前使用的主题的 functions.php 文件,并加入以下代码:
make_log_file(); function make_log_file(){ //生成日志文件 $filename = 'zhizhu.txt'; //去除 rc-ajax 评论以及 cron 机制访问记录 if(strstr($_SERVER["REQUEST_URI"],"rc-ajax")== false && strstr($_SERVER["REQUEST_URI"],"wp-cron.php")== false ) { $word .= date('mdHis',$_SERVER['REQUEST_TIME'] + 3600*8) . " "; //访问页面 $word .= $_SERVER["REQUEST_URI"] ." "; //协议 $word .= $_SERVER['SERVER_PROTOCOL'] ." "; //方法,POST OR GET $word .= $_SERVER['REQUEST_METHOD'] . " "; //$word .= $_SERVER['HTTP_ACCEPT'] . " "; //获得浏览器信息 $word .= getbrowser(). " "; //传递参数 $word .= "[". $_SERVER['QUERY_STRING'] . "] "; //跳转地址 $word .= $_SERVER['HTTP_REFERER'] . " "; //获取 IP $word .= getIP() . " "; $word .= " "; $fh = fopen($filename, "a"); fwrite($fh, $word); fclose($fh); } } //获取 IP 地址 function getIP() { if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else if (getenv('REMOTE_ADDR')) { $ip = getenv('REMOTE_ADDR'); } else { $ip = $_SERVER['REMOTE_ADDR']; } return $ip; } //获取浏览器信息 function getbrowser() { $Agent = $_SERVER['HTTP_USER_AGENT']; $browser = ''; $browserver = ''; if(ereg('Mozilla', $Agent) && ereg('Chrome', $Agent)) { $temp = explode('(', $Agent); $Part = $temp[2]; $temp = explode('/', $Part); $browserver = $temp[1]; $temp = explode(' ', $browserver); $browserver = $temp[0]; $browserver = $browserver; $browser = 'Chrome'; } if(ereg('Mozilla', $Agent) && ereg('Firefox', $Agent)) { $temp = explode('(', $Agent); $Part = $temp[1]; $temp = explode('/', $Part); $browserver = $temp[2]; $temp = explode(' ', $browserver); $browserver = $temp[0]; $browserver = $browserver; $browser = 'Firefox'; } if(ereg('Mozilla', $Agent) && ereg('Opera', $Agent)) { $temp = explode('(', $Agent); $Part = $temp[1]; $temp = explode(')', $Part); $browserver = $temp[1]; $temp = explode(' ', $browserver); $browserver = $temp[2]; $browserver = $browserver; $browser = 'Opera'; } if(ereg('Mozilla', $Agent) && ereg('MSIE', $Agent)) { $temp = explode('(', $Agent); $Part = $temp[1]; $temp = explode(';', $Part); $Part = $temp[1]; $temp = explode(' ', $Part); $browserver = $temp[2]; $browserver = $browserver; $browser = 'Internet Explorer'; } if($browser != '') { $browseinfo = $browser.' '.$browserver; } else { $browseinfo = $_SERVER['HTTP_USER_AGENT']; } return $browseinfo; }
然后保存文件,这样当你再次访问网站的时候根目录下就会生成一个 zhizhu.txt 的日志文件,另外这个方法还可以用来统计蜘蛛抓取痕迹 (也就是搜索引擎蜘蛛访问了你那些页面) 。
示例:zhizhu.txt