Nginx反向代理的使用
生活随笔
收集整理的這篇文章主要介紹了
Nginx反向代理的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 常用服務器比較
apache:
功能完善,歷史悠久,模塊支持非常豐富,屬于重量級產品,比較耗費內存。缺點:處理每一個php比較費資源,導致如果高并發時會耗費服務器資源無法處理更多請求。
lighttpd:
內存開銷低,cpu 占用率低,效能好,模塊豐富等特點,輕量級web服務器。
nginx:
省資源,省cpu,在高并發時能夠處理更多的請求,高端能達到3萬到5萬的并發量,還有負載均衡可使用。
2.nginx功能
參考:Nginx解決跨域請求,通俗解釋
3.mac安裝nginx
安裝(可以用 brew 安裝)
sudo brew install nginx查看 nginx 版本
(需要查看nginx安裝位置,可以用 find / -name nginx查看)
啟動 nginx
nginx重啟
nginx -s reload參考:mac上安裝Nginx詳細教程
4.nginx反向代理(請求轉發)
(1)修改nginx配置文件:
vi nginx/config/nginx.config(2)加入代碼:
server {listen 443;#監控的端口charset utf-8;server_name 10.xx.xx.xx; #域名:通常格式為www.abc.comssl_certificate /opt/k12/nginx/hsxx.xhedu.sh.cn.pem; ssl_certificate_key hsxx.xhedu.sh.cn.key;ssl_session_timeout 5m; #響應時間ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #解密方法ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on; location ^~ /xx/260/ { # ^~/api 表示匹配前綴為api的請求proxy_pass http://10.xx.xx.xx:8801/xx/260/; # 注:proxy_pass的結尾有/, -> 效果:會在請求時將/api/后面的路徑直接拼接到后面# proxy_set_header作用:設置發送到后端服務器(上面proxy_pass)的請求頭值 # 【當Host設置為 $http_host 時,則不改變請求頭的值;# 當Host設置為 $proxy_host 時,則會重新設置請求頭中的Host信息;# 當為$host變量時,它的值在請求包含Host請求頭時為Host字段的值,在請求未攜帶Host請求頭時為虛擬主機的主域名;# 當為$host:$proxy_port時,即攜帶端口發送 ex: $host:8080 】proxy_set_header Host $proxy_host; proxy_set_header X-Real-IP $remote_addr; # 在web服務器端獲得用戶的真實ip 需配置條件① 【 $remote_addr值 = 用戶ip 】proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 在web服務器端獲得用戶的真實ip 需配置條件②proxy_set_header REMOTE-HOST $remote_addr;# proxy_set_header X-Forwarded-For $http_x_forwarded_for; # $http_x_forwarded_for變量 = X-Forwarded-For變量}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}}參考:Nginx 配置反向代理
nginx 配置443端口
總結
以上是生活随笔為你收集整理的Nginx反向代理的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三相四线怎样查漏电_老电工支招!漏电保护
- 下一篇: 切割 字符串_web前端如何使用字符串