#文件:host.conf,在server里面加上
==================================================
body_filter_by_lua_file /usr/local/nginx/conf/spider.lua;
==================================================
#文件:spider.lua
==================================================
-- 文件用/tmp内存文件,用硬盘会漏写
local f, err = io.open("/tmp/log_spider.txt", "a+") -- 通常没必要用b二进制,也要确认是否有写权限
-- 第一层URL判断
check_uri = string.find(ngx.var.request_uri, "/article/")
if(check_uri ~= nil)
then
check_baidu = string.find(ngx.var.http_user_agent, "Baiduspider")
check_360 = string.find(ngx.var.http_user_agent, "360Spider")
check_sousou = string.find(ngx.var.http_user_agent, "Sogou web spider")
--判断蜘蛛
if(check_baidu~=nil or check_360~=nil or check_sousou~=nil)
then
f:write(ngx.var.time_iso8601) f:write("|") f:write(ngx.var.host) f:write("|") f:write(ngx.var.request_uri) f:write("|") f:write(ngx.var.http_user_agent) f:write("|") f:write(ngx.var.remote_addr) f:write("\r\n") f:flush()
end
end
================================================== |