nginx反向代理,隱藏服務IP

1.配置nginx.conf添加如下代理設置:

proxy_connect_timeout 300s; 
proxy_read_timeout 300s;
proxy_send_timeout 300s;
proxy_buffer_size 64k; 
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_ignore_client_abort on;

各字段說明

proxy_set_header 設置由後端的服務器獲取用戶的主機名或者真實的IP地址,以及代理者的真實IP地址。
client_body_buffer_size 用戶指定客戶端請求主體緩衝區大小,可以理解爲先保存到本地再上傳給用戶。
proxy_send_timeout 表示後端服務器的數據回傳時間,即在規定時間之內後端服務器必須傳完所有的數據,否則,nginx將斷開這個連接。
proxy_read_timeout 設置nginx從代理的後端服務器獲取信息的使勁按,表示連接建立成功後,nginx等待後端服務器的響應時間,其實是nginx已經進入後端的排隊之中等候處理的時間。
proxy_buffer_size 設置緩衝區大小,默認,該緩衝區大小等於指令proxy_buffers 設置的大小
proxy_buffers 設置緩衝區的數量和大小。nginx從代理的後端服務器獲取的響應信息、會放置到緩衝區
proxy_busy_buffers_size 用於設置系統很忙時可以使用的proxy_buffers大小,官方推薦的大小爲proxy_buffers*2。
proxy_temp_file_write_size 指定proxy緩存臨時文件的大小

2.在相關代理服務端配置如下:重啓服務器就好

        proxy_redirect off;
        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-Scheme $scheme;
        #proxy_pass $scheme://proxy_location$request_uri;
        proxy_pass http://localhost:9292;

3.如果設計websocket,新添加

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

4 隱藏nginx版本信息,在nginx.conf裏面增加

server_tokens off

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章