鍍金池/ 問答/Linux/ nginx 如何配置搜索引擎蜘蛛的日志功能?

nginx 如何配置搜索引擎蜘蛛的日志功能?

新人一枚。

做了個網(wǎng)站,想知道被哪些爬蟲索引過,詢問怎么在nginx里按日期配置不同搜索引擎的日志記錄呢?

回答
編輯回答
尤禮
2017年1月3日 01:56
編輯回答
情已空
http {
    map $http_user_agent $ua_log {
        default '';
        ~*(Spiders|Robots|Crawler) "-spiders";
    }

    server {
        if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})") {
            set $year $1;
            set $month $2;
            set $day $3;
        }
        access_log logs/example.com-$year-$month-$day$ua_log.log;
    }
}

以上是最精簡的配置,你自己拆開復(fù)制到相應(yīng)的配置段落了吧

不過這樣的配置,效率真的低,主要有兩點:

  1. 每個請求都會執(zhí)行正則和設(shè)置若干個變量
  2. 每次寫日志都需要打開文件句柄,關(guān)閉文件句柄,效率較低

訪問量不高的話,沒什么影響,訪問量高得考慮更優(yōu)的方案

2018年8月20日 21:26