對於nginx+tomcat這種架構,如果後端tomcat配置保持默認,那麼tomcat的訪問日誌裏,記錄的就是前端nginx的IP地址,而不是真實的訪問IP。因此,需要對nginx、tomcat做如下配置:
1)nginx配置 在nginx.conf配置中修改
server{
listen 80;
server_name www.abc.com;
location / {
proxy_connect_timeout 3;
proxy_send_timeout 30;
proxy_read_timeout 30;
proxy_pass http://192.168.0.67:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
2)tomcat配置 在server.xml文件中<host></host>中,修改原有內容如下
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%{X-FORWARDED-FOR}i %l %u %t %r %s %b %D %{User-Agent}i" resolveHosts="false" />
知行辦公,專業移動辦公平臺
【總監】十二春秋之,[email protected];
【Master】zelo,[email protected];
【運營】運維艄公,[email protected];
【產品設計】流浪貓,[email protected];
【體驗設計】兜兜,[email protected];
【iOS】淘碼小工,[email protected];iMcG33K,[email protected];
【Android】人猿居士,[email protected];思路的頓悟,[email protected];
【java】首席工程師MR_W,[email protected];
【測試】土鏡問道,[email protected];
【數據】喜樂多,[email protected];
【安全】保密,你懂的。