最近維護的網站總是有搜索引擎來惡意訪問,搞咱們網站打開很慢,OMG老總髮話了,必需要搞定。linux
曾經在nginx.conf文件中作過濾,but這樣作過,可是會影響收錄,糾結啊........nginx
if ($http_user_agent ~* "Gecko|YoudaoBot|baiduspider|Googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|robozilla|msnbot|MJ12bot|NHN|Twiceler"){
return 403;
}瀏覽器
發現了個日記分析工具,感受挺好用的,可是個人問題仍是沒有解決,難道叫我屏蔽IP吧,可能須要這樣作。服務器
下面讓咱們挖掘GoAccess,good jobs............ssh
GoAccess簡介ide
GoAccess是運行在Unix系統終端,開源、實時分析Apache日誌(其實也可以分析Nginx日誌)而且可以動態呈現的軟件。它爲系統管理員提供了一個快速、有價值的HTTP統計,動態的可視化的服務器報告。工具
做用網站
GoAccess的工做方式是,它將解析衆所周知的Apache訪問日誌文件 access log,GoAccess經過解析日誌收集的數據,將會顯示它的控制檯或某個終端。收集到的信息或生成的報告將顯示給在視覺、交互窗口的系統管理員用戶。報告包括:
綜合統計
訪客排行榜
請求文件排行榜
請求的靜態文件排行榜,如圖片、JS文件、CSS文件等
訪問來源
404頁面
訪問者的操做系統
訪問者的瀏覽器
瀏覽器和蜘蛛(搜索爬蟲)
主機,反向DNS,IP位置
HTTP狀態碼
推介網站
搜索關鍵詞
顯示時不一樣的配色方案
無限制日誌文件的大小(決定了GoAccess的打開速度)搜索引擎
GoAccess主頁 http://goaccess.prosoftcorp.com/編碼
GoAccess命令
#下載AoAccess安裝包
wget http://sourceforge.net/projects/goaccess/files/0.4.2/goaccess-0.4.2.tar.gz/download
#解壓文件
tar zxvf goaccess-0.4.2.tar.gz
cd goaccess-0.4.2
#啓動ip歸屬地查詢和utf8編碼格式支持
./configure –enalbe-geoip –enable-utf8
make
make install
用法介紹
GoAccess的基本語法以下:
goaccess [ -b ][ -s ][ -e IP_ADDRESS][ - a ] <-f log_file >
goaccess -b access.log
參數說明:
1) -f – 日誌文件名
2) -b – 開啓流量統計,若是但願加快分析速度不建議使用該參數
3) -s – 開啓HTTP響應代碼統計
4) -a – 開啓用戶代理統計
5) -e – 開啓指定IP地址統計,默認禁用
用法示例:
最簡單、經常使用的命令就是直接調用goaccess命令
goaccess –f access.log
簡單操做命令:
1 + O
2 + O
3 + O
.....................................
等
顯示HTTP響應代碼、用戶代理、流量消耗(產生完整、全面統計數據的使用方式)
goaccess –f access.log –s –a –b
goaccess支持linux管道,咱們能夠將日誌文件預處理後,再交給goaccess去分析。
zcat access.log.1.gz | goaccess
Aoaccess去分析已經打包壓縮好的日誌文件或者乾脆分析目前下全部日誌
zcat access.log* | goaccess
若是須要分析某天的日誌,例如2012年9月號8那天的日誌,咱們讓linux管道命令。
sed -n ‘/08\/Sep\/2012/,$ p’ access.log | goaccess -s –b
低優先級運行GoAccess的方式
nice -n 19 goaccess -f access.log -s -a -b
分析從9月1號到9月30號的日誌 sed -n ‘/1\/Sep\/2012,/30\/Sep\/2012/ p’ access.log | goaccess -s –b 調用本地的goaccess程序來分析服務器上的日誌(遠程分析nginx log) ssh 'cat /www/nginx/logs/access.log' | goaccess -s -a -b