目的:將使用者的訪問資訊記錄到指定的檔案中由ngx_http_log_module模組負責
訪問日誌引數:
access_log:指定日誌檔案的路徑和使用何種日誌格式記錄日誌log_format:用來指定日誌的格式
可以放置標籤段: main,http,server,location
日誌格式
新增日誌:
sed -i '1 i error_log logs/error.log error;' /usr/local/nginx/conf/nginx.conf建立日誌路徑:mkdir -p /usr/local/nginx/logs1. 配置log_format(在http中配置)sed -n '21,24p' nginx.conf.default取出資訊後新增都nginx.conf的http模組中(server之前)2. 配置access_log(最好在虛擬主機裡面配置,便於統計)
預設配置:#access_log logs/access.log main;
放置位置:http server location
本機配置:在單獨的虛擬網域名稱的location後配置(注意封號)
server3. 配置windows的hosts解析c:\windows\system32\drivers\etcaccess_log logs/access_etiantian.log main;
} # main 表示全域性,所有的訪問虛擬主機etianitian的都會打入
4. 測試結果
瀏覽器訪問www.etiantian.com【注意,真實環境也有此ip,本次僅作實驗用,記得恢復hosts檔案】
1. 高併發可以寫入快取
access_log log/access_baobaotao.log main gzip buffer=32k flush=5s;2. nginx訪問日誌的輪詢處理(日誌按天分割) -->推薦緣由:指定的訪問日誌長時間寫入會導致檔案過大而無法分析,可以使用切割指令碼
#!/bin/sh3.切割指令碼新增到定時任務dateformat=`date +%y%m%d`
basedir="/usr/local/nginx"
nginxlogdir="$basedir/logs"
logname="access_etiantian"
[ -d $nginxlogdir ] && cd $nginxlogdir||exit 1
[ -f $.log ] || exit 1
/bin/mv $.log $_$.log
$basedir/sbin/nginx -s reload
crontab –e00 00 * * * /bin/sh cut_nginx.sh &>/dev/null自帶:syslog rsyslog開源:flume logstash scrible awstats elk
Nginx運維 企業級優化
一 優化引數 1 引數與linux引數優化一致 2 nginx的健康檢查 二 keepalived介紹 1 keepalived服務介紹 2 keepalived故障切換轉移原理 3 vrrp協議介紹 4 keepalived工作原理 三 安裝keepalived 2 複製keepalived的啟動...
RedHat 6 5 企業級下安裝nginx
1.安裝相關nginx依賴庫檔案 yum y install gcc gcc c autoconf automake yum y install zlib zlib devel openssl openssl devel 2.安裝 3.解決問題 root yuanting nginx 1.12 2 ...
企業級API設計
最近對service的api設計,在team內有些討論,主要集中在api是足夠抽象 通用好呢,還是具體 易用好?其實這個是要折衷的,通用的好處是以後更改api的可能性小,但壞處是想要通用,裡面的字段就不能定義太死,不定義死,極端的例子是全部用name value pair,最通用,但client面對...