百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

实战录 | 今天聊聊Nginx反向代理使用

off999 2025-01-20 15:41 28 浏览 0 评论

《实战录》导语

本期分享人为云端卫士SOC工程师田全磊,将带来Nginx反向代理使用。本文涉及到nignx的安装、nginx的配置说明、nginx的负载均衡、nginx的反向代理和nginx的ssl方反向代理以及nginx location路径匹配优先级等问题。

最近工作中经常使用nginx,为了能够更好的使用nginx,我搜罗了很多nginx相关的技术文章来读,所以才有了下面以下内容。在此,为文中引用到和参考到的文章提供者表示感谢。如文中相关内容有错误,也欢迎大家留言提出。

Nginx的安装与启动

1)pcre安装,支持正则表达式

http://www.pcre.org/

# tar zxvf pcre-7.9.tar.gz

# cd pcre-7.9

#./configure

# make && make install

2)openssl安装(可选),支持安全协议的站点

http://www.openssl.org/

# tar zxvf openssl-0.9.8l.tar.gz

# cd openssl-0.9.8l

#./config

# make && make install

3)nginx的安装

# tar zxvf nginx-0.7.64.tar.gz

# cd nginx-0.7.64

4)启动

# cd usr/local/nginx/sbin

# /nginx

5)重启

./nginx -s reload

Nginx.conf 基本配置

#user nobody;

worker_processes 1; #nginx进程数,建议设置为等于CPU总核心数。

events {

worker_connections 1024; #单个进程最大连接数(最大连接数=连接数*进程数)

}

http {

include mime.types;#文件扩展名与文件类型映射表

default_type application/octet-stream;#默认文件类型

sendfile on;#sendfile on; #开启高效文件传输模式

keepalive_timeout 60;#长连接超时时间,单位是秒

#gzip模块设置(略)

upstream blog.ha97.com {

#upstream的负载均衡,weight是权重,可以根据机器配置定义权重

#weigth参数表示权值,权值越高被分配到的几率越大。

server 192.168.80.121:80 weight=3;

server 192.168.80.122:80 weight=2;

server 192.168.80.123:80 weight=3;

}

server {

listen 80;

server_name localhost;

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

location /test {

proxy_pass http://192.168.24.152:8080/abc;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

server{

listen 8082;#监听端口

server_name localhost;

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

}

Nginx.conf server配置说明

1) server配置说明

server {

listen 80; #监听端口

server_name localhost; #域名可以有多个,用空格隔开

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

#把真实的IP发送给 转发的web服务器,否则转发的IP是nginx这台的IP

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

#意思是增加一个$proxy_add_x_forwarded_for到X-Forwarded-For里去

#例X-Forwarded-For: 1.1.1.1, 2.2.2.2, 3.3.3.3 代表 请求由1.1.1.1发出,

#经过三层代理,#第一层是2.2.2.2,第二层是3.3.3.3,而本次请求的来源

#IP4.4.4.4是第三层代理

}

}

2)多个server配置,监听不同端口

server { #server1

listen 80;

server_name localhost;

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

server{ #server2

listen 8082;#监听端口

server_name localhost;

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

server配置路径匹配问题

Nginx location中可能涉及的匹配规则有:

  • = 精确匹配

  • ^~ 普通字符匹配,区分大小写

  • ~ 正则匹配,区分大小写

  • /xxx/yyy.zzz 最长匹配

  • /

其优先级顺序如下:

  • =优先级大于^~

  • ^~优先级大于~

  • ~ 对比 /xxx/yyy.zzz

  • ^~优先级大于/xxx/yyy.zzz

  • ~优先级大于/

  • /xxx/yyy.zzz优先级大于/

  • /xxx/yyy/ 优先级大于 /xxx/

综上所述location规则优先级顺序为 = > ^~ > ~ > /xxx/yyy.zzz > / ,路径匹配的优先级与location在文档中的位置先后无关。

Nginx实现ssl反向代理

server {

listen 443; #监听443端口

server_name localhost;

ssl on; #启用ssl加密

ssl_certificate /ect/cert/free4lab.crt; #服务器证书crt文件

ssl_certificate_key /ect/cert/free4lab.key; #服务器私钥key文件

location / {

proxy_pass http://192.168.24.152:8080/test1;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

相关推荐

独一无二繁体字网名(独一无二繁体字网名大全)

超复杂网名用繁体字表示就应写成“超複雜”,看看复杂的繁体字“複雜”的写法是蛮复杂,所以简体字的运用大大方便了人们的使用。殺軟嬌貪歡張錯過樂極寵愛兩壹塹長壹牽帶?g??稀爱★?a流.浪.猪爱...

2025组装机配置清单(2020年组装机主流配置)

13代已经出了。现在入手12代英特尔平台性价比最高。这套在3000比较偏显卡,也可以显卡用影驰GTX16504GD6128Bit,价格1100,省下来的钱可以把内存升级为8G×2条16G。Cp...

宗门系统流小说排行榜(宗门系统文)

第一《史上第一祖师爷》作者:八月飞鹰短书评:系统主线任务:林锋开山立派,建立史上第一大宗门,林锋本人成为第一祖师。第二《修真门派掌门路》作者:齐可休书评:本命由天授,同参伴我行逍遥两相对,一道诵黄庭在...

水星路由器设置ip地址(水星路由器的ip地址怎么改)

mercury无线路由器设置IP地址的步骤如下:  1、先将宽带网线插到路由器的wan口,再插入电源插头。  2、在带有无线网卡的笔记本电脑上右击“网上邻居”,选择“属性”。  3、再右击“本地连接”...

正版w10系统多少钱

Windows10家庭版官方价格:888元Windows10专业版价格:1799元Windows10家庭版到专业版升级包价格:879元Windows10企业版价格:4200元Windows10教育版价...

七彩虹(七彩虹显卡)

https://www.colorful.cn/七彩虹于2005年深圳成立。深耕于电脑主机板卡硬件的二十年间,七彩虹完成了三大阶段的战略转型,成功地由计算机零组件代理商蜕变成为拥有自主研发、自主生产、...

华硕驱动下载专区(华硕官方驱动)

从华硕官网下载原装系统可以按以下步骤进行:1.打开华硕官网:https://www.asus.com/cn/。2.将鼠标移动到“支持”菜单上,并点击“驱动与工具”。3.在页面中找到“操作系统”选...

黑客教你破解wifi密码(黑客教你破解wifi密码是多少)

黑客是利用wifi的拼码,或者路由器的加密不强破解的,高级的黑客,在很短的时间内就可以破解密码繁杂的wifi你是用了别人的软件吧太相信别人了什么黑客。带一堆模块的玩意儿也叫黑客?黑客和骇客是两...

高仿ios主题全套软件(超高仿ios安卓主题)

IPhone12启动器全套仿Ios12桌面主题是一款能够让大家的安卓手机秒变苹果机的系统工具,IPhone12启动器可让你的手机直接变成IPhone12的桌面。从主题,桌面,Ui以及系统内的各种细节,...

win10在哪里下载软件最好(win10软件在哪下载比较好)

1、点击Win10系统的开始菜单,然后在点击应用商店;2、打开Win10应用商店后,在搜索框里输入想要搜索的应用软件,然后点击检索;3、点击搜索到的应用,点击安装;4、点击安装后,系统会提示要切换到这...

电脑软件怎么安装(电脑软件怎么安装到手机上)

电脑怎么安装excel软件方法/步骤:1.在电脑左下角找到这个小圆圈,单击小圆圈打开搜索栏。搜索MicrosoftStore。2.在右上角找到搜索,单击搜索。在搜索中输入Excel。回车键打开。3....

u盘win7系统安装盘(u盘里安装win7系统)

有些软件我们从网上下载安装时需要破解密码或者我们没有网时,直接需要把安装的软件,传到别的电脑,具体操作如下:1。直接把另一台电脑桌面上的软件复制或发送的优盘里,其实那只是一个快捷方式2.以ps软件为例...

语音输入法哪个好用(语音输入法免费版下载安装)

日常基本使用的讯飞和搜狗都还不错,对比来看的话,讯飞相对会更好一些。讯飞输入法在键盘输入方面进步非常快,功能也比较全面。单纯的语音方面,讯飞的稍微好一点,例如一些标点、断句之类处理的更加到位。讯飞支持...

手机app应用市场(手机里面的应用市场)

360手机助手是android智能手机的手机管理专家。提供海量的游戏、软件、音乐、小说、视频、图片,通过它轻松下载、安装、管理手机资源。所有提供信息资源,全部经过360安全检测中心的审核认证,绿色无毒...

开局最强系统(开局最强系统txt奇书网)
开局最强系统(开局最强系统txt奇书网)

《最强奶爸系统》作者:最美猪猪小说简介同学甲:“我找到了月入七千的工作。”同学乙:“我找到了月入一万的工作。叶辰,你呢?”叶辰:“我老婆…是万亿市值超凡集团的老板,给我生了10个孩子。”同学们:???叶辰遭前女友陷害,阴差阳错邂逅了一位美女...

2026-01-03 07:03 off999

取消回复欢迎 发表评论: