当前位置: 代码网 > it编程>编程语言>Java > SpringBoot整合Nginx实现反向代理、负载均衡与HTTPS配置

SpringBoot整合Nginx实现反向代理、负载均衡与HTTPS配置

2026年07月20日 Java 我要评论
生产环境中,springboot 一般不直接暴露端口给用户,前面都会加一层 nginx。nginx 负责反向代理、负载均衡、ssl 证书、静态资源缓存等。一、反向代理基本配置:server {

生产环境中,springboot 一般不直接暴露端口给用户,前面都会加一层 nginx。nginx 负责反向代理、负载均衡、ssl 证书、静态资源缓存等。

一、反向代理

基本配置:

server {
    listen 80;
    server_name api.example.com;
    location / {
        proxy_pass http://127.0.0.1:9090;
        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-proto $scheme;
    }
}

二、负载均衡

upstream seckill_backend {
    # weight 越大,分配到的请求越多
    server 192.168.1.101:9090 weight=3;
    server 192.168.1.102:9090 weight=2;
    server 192.168.1.103:9090 weight=1;
}
server {
    listen 80;
    location / {
        proxy_pass http://seckill_backend;
        proxy_http_version 1.1;
        proxy_set_header connection "";
    }
}

三、https

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d api.example.com
server {
    listen 443 ssl;
    server_name api.example.com;
    ssl_certificate /etc/letsencrypt/live/api.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/api.example.com/privkey.pem;
    location / {
        proxy_pass http://127.0.0.1:9090;
    }
}

四、websocket 支持

location /ws {
    proxy_pass http://127.0.0.1:9090;
    proxy_http_version 1.1;
    proxy_set_header upgrade $http_upgrade;
    proxy_set_header connection "upgrade";
    proxy_set_header host $host;
    proxy_read_timeout 300s;
}

五、静态资源缓存

location /static/ {
    root /opt/app/;
    expires 7d;
    add_header cache-control "public, immutable";
}

六、安全与限流

# 限制同一 ip 每秒最多 10 个请求
limit_req_zone $binary_remote_addr zone=api_limit:10m rate=10r/s;
server {
    location /api/ {
        limit_req zone=api_limit burst=20 nodelay;
        proxy_pass http://127.0.0.1:9090;
    }
}

到此这篇关于springboot整合nginx实现反向代理、负载均衡与https配置的文章就介绍到这了,更多相关springboot整合nginx内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com