nginx配置反向代理数据库等插件的原理和方式

nginx配置反向代理数据库等插件的原理和方式

一、反向代理数据库

通过 Nginx 反向代理 mysql数据库, Nginx 的 TCP/UDP 代理模块(stream)实现数据库端口的转发。

1、确认 Nginx 支持 stream 模块

nginx -V 2>&1 | grep -o with-stream
# 若输出 `with-stream` 表示支持,否则需重新编译安装

2、重新安装编译

# 编译并启用 stream 模块
./configure --with-stream --prefix=/usr/local/nginx

make  

make install

3、nginx.conf 的 主配置层级添加 stream

# nginx.conf 主配置文件
user  nginx;
worker_processes  auto;

events {
    worker_connections  1024;
}

# 关键配置:stream 模块代理 mysql
stream {
    server {
        listen     3307;          # 外网暴露的端口(非5432避免冲突)
        proxy_pass 192.168.1.100:3306;  # 内网数据库地址
        proxy_connect_timeout 60s;
        proxy_timeout 12h;        # 长连接超时时间
    }

    # 代理第二个数据库(MySQL 示例)
    server {
        listen 1381;             # 外网暴露端口2
        proxy_pass 192.168.01.11:3306;  # 内网数据库2地址
        proxy_connect_timeout 60s;
        proxy_timeout 12h;
    }
}

http {
    # 原有 HTTP 配置(可保留其他服务)
    ...
}

4、重新加载

nginx -s reload

正常情况配置已经生效,外网的ip如果是本地电脑 127.0.0.1(或者111.2.2.118),就可以通过3307端口访问 内网的数据库了。

二、反向代理geosever

三、反向代理后端服务

四、反向代理前端服务

五、代理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寅灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值