1
如果請求來自我的本地網絡(例如192.168.x.x),如何將訪問日誌重定向到替代文件? 我發現some hints我如何根據請求者IP禁用日誌,但在我的情況下,我想將這些請求記錄到另一個文件中,以便爲了開發目的,我只能在特定文件中看到我自己的日誌。本地請求的nginx替代日誌文件
如果請求來自我的本地網絡(例如192.168.x.x),如何將訪問日誌重定向到替代文件? 我發現some hints我如何根據請求者IP禁用日誌,但在我的情況下,我想將這些請求記錄到另一個文件中,以便爲了開發目的,我只能在特定文件中看到我自己的日誌。本地請求的nginx替代日誌文件
答案出現在您引用的頁面中,您只需要將1
s和0
s取消即可。
這應該工作:
map $remote_addr $private_ip {
~^192\.168\. 1;
default 0;
}
map $remote_addr $public_local {
~^192\.168\. 0;
default 1;
}
server {
...
# access-private.log for requests from local network
access_log /path/to/access-private.log main if=$private_ip;
# access.log for all other requests
access_log /path/to/access.log main if=$public_ip;
...
}
編輯:其實geo
指令更適合映射$remote_addr
:
geo $private_ip {
192.168.0.0/16 1;
default 0;
}
geo $public_local {
192.168.0.0/16 0;
default 1;
}
太明顯了,0/1需要顛倒,問題是關於將本地網絡的請求的日誌指向另一個文件。我用適當的解決方案修改了答案 – Pavel