nginx 日志怎么實現顯示真實客戶端IP


這篇文章頁不錯:

http://www.tuicool.com/articles/E32mYf

 

假如說我們現在的架構是,nginx做反向代理,apache做web服務器。那么我們怎么讓我的web服務器的訪問日志顯示的是真實客戶訪問的IP呢?

正常情況下我們的訪問日志顯示的是反向代理服務器的地址,所以我們要做一定的修改讓我們的web服務的訪問日志顯示真實訪問者的IP地址。

 

需要做如下的調整:
比如說我現在有一台虛擬主機的配置如下:我們需要添加  proxy_set_header X-Forwarded-For $remote_addr;

server {
 listen 80 ;
 server_name big.bao.com;
 server_tokens off ;

 location / {
  proxy_next_upstream http_502 http_504 error timeout invalid_header;
  proxy_set_header Host $host;
  proxy_set_header X-Forwarded-For $remote_addr;
  proxy_pass http://big;
  access_log logs/big.access.log main;
  error_log  logs/big.error.log;
  }
 expires 1d;

 

現在我們再修改一下web服務器的配置文件   vim /etc/httpd/conf/httpd.conf

把%h修改為%(X-Real-IP)

這樣在我們的web服務器的訪問日志就可以看到訪問者的真實IP地址了,這樣的話,就不會和之前一樣看到的訪問IP的地址都是代理服務器的IP

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM