最新在线看的黄网|伊人久久久久久久网站|日本a视频专区二|欧美A级无码毛片|有扫五av在线播放|好屌日aV在线播放|内射福利视频导航|极品少妇一区二区视频|无吗在线一区播放|性爱黄色视频不卡

您的位置:首頁 > 新聞 > 推廣

Flask+Nginx反向代理時(shí)logging打印真實(shí)IP和代理IP
推廣 2023-10-28編輯:深圳網(wǎng)站建設(shè)閱讀(標(biāo)簽: WordPress 代理 真實(shí)

前言

這是最近碰到的一個(gè)問題,場(chǎng)景是服務(wù)器上運(yùn)行了Flask和Nginx,使用了Nginx反向代理到Flask,但是此時(shí)Flask的日志中記載的IP全部都是127.0.0.1,不方便進(jìn)行分析,所以要自己定義打印的IP情況。

我需要在日志中顯示真是的訪問IP和用戶的代理IP,也就是X-Real-Ip和X-Forwarded-For兩個(gè)請(qǐng)求頭。

因?yàn)閒lask的日志是從werkzeug_internal.py模塊打印出來的,所以要重寫這里面的一個(gè)函數(shù)。

0x2 重寫日志的IP地址獲取方法

代碼如下:

1 2 3 4 5 6 7 def fix_werkzeug_logging(): ????from werkzeug.serving import WSGIRequestHandler ????def address_string(self): ????????# 這就是在nginx的config中,為什么一定要有X-Real-IP啦 ????????return "[%s]-[%s]" % (self.headers.get('X-Forwarded-For', self.client_address[0]), self.headers.get('X-Real-Ip', self.client_address[0])) ????WSGIRequestHandler.address_string = address_string

上的代碼是重寫代碼,之后再配置日志格式即可:

1 2 3 4 5 6 7 8 def init(): ????fix_werkzeug_logging()??#在此處調(diào)用 ????logging.basicConfig(level=logging.INFO, ????????????????????????format='[Process %(process)d] [Thread %(thread)d] %(asctime)s %(filename)s ' ?????????????????????????????? '%(funcName)s[line:%(lineno)d] %(levelname)s %(pathname)s ' ?????????????????????????????? '[message: %(message)s] ', ????????????????????????datefmt='%Y-%m-%d %H:%M:%S', ????????????????????????filemode='a')

配置Nginx反向代理

Nginx在反向代理的時(shí)候需要將X-Forwarded-For和X-Real-Ip兩個(gè)頭進(jìn)行傳遞,配置如下:

1 2 3 4 5 6 proxy_pass http://127.0.0.1:8082/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $http_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr;

效果

1 [message: [192.168.0.1]-[192.168.2.2] - - [15/Feb/2020 15:53:21] "GET / HTTP/1.1" 404 -]
服務(wù)范圍:整站優(yōu)化、站內(nèi)優(yōu)化、外貿(mào)網(wǎng)站優(yōu)化、K站恢復(fù)
服務(wù)優(yōu)勢(shì):10年優(yōu)化SEO經(jīng)驗(yàn),上詞穩(wěn)定,達(dá)標(biāo)率高、費(fèi)用低
其它服務(wù):網(wǎng)站建設(shè)、企業(yè)郵箱、數(shù)字證書ssl、400電話、
聯(lián)系方式:電話:13714666846 微信同號(hào)

WordPress,代理,真實(shí),WordPress,代理,真實(shí)相關(guān)推薦預(yù)約建網(wǎng)站

聯(lián)系我們 MORE+
網(wǎng)站建設(shè)公司聯(lián)系方式
  • 電話:13714666846
  • 坐機(jī):0755-29765948
  • 郵箱:Gong588@ew35.com
  • 地址:深圳市羅湖區(qū)涼果街5棟2033號(hào)
  • 深圳市網(wǎng)商在線科技有限公司
深圳網(wǎng)站建設(shè)公司
24小時(shí)服務(wù)熱線 0755-29765948
  • 地址:深圳市羅湖區(qū)人民北路2033號(hào)206
  • 電話:0755-29765948 傳真:82256610
  • 手機(jī):13714666846 18948334877
  • 郵箱:gong@ew35.com 164761418@qq.com
  • 粵ICP備14049207號(hào)
創(chuàng)意化數(shù)字品牌整合網(wǎng)絡(luò)營銷
營銷網(wǎng)站讓你坐等商機(jī)坐傭客戶,Rss

版權(quán)所有:深圳市網(wǎng)商在線科技有限公司

友情鏈接: