HCRM博客

CentOS环境下Nginx配置反向代理本地8080端口指南

CentOS+Nginx反向代理本地8080,配置片段可直接抄

线上服务突然跑在8080端口,老板一句“要用域名访问”,手边只有一台最小化装的CentOS,防火墙还开着,怎么办?把Nginx拎出来当反代,是最省心的办法。下面这段路,我踩过坑,也帮同事填过坑,直接把能用的配置甩给你,复制粘贴就能跑,顺便把容易卡住的地方一次说清。

CentOS环境下Nginx配置反向代理本地8080端口指南-图1

先装Nginx,别用旧源

CentOS默认仓库里的Nginx版本老得能当化石,先给系统换条新源:

sudo yum install -y yum-utils

sudo vi /etc/yum.repos.d/nginx.repo

把下面内容整块丢进去,保存退出:

[nginx-stable]

CentOS环境下Nginx配置反向代理本地8080端口指南-图2

name=nginx stable repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=1

enabled=1

gpgkey=https://nginx.org/keys/nginx_signing.key

接着敲:

CentOS环境下Nginx配置反向代理本地8080端口指南-图3

sudo yum install -y nginx

装完顺手启动:

sudo systemctl enable --now nginx

浏览器里输入服务器IP,看到欢迎页就说明安装这一步没毛病。

放开防火墙,别把自己关门外

CentOS自带firewalld,默认只给SSH开口子。HTTP和HTTPS得手动放:

sudo firewall-cmd --permanent --add-service=http

sudo firewall-cmd --permanent --add-service=https

sudo firewall-cmd --reload

一条不落敲完,再刷新页面,确保80端口能通。

反向代理核心配置,照抄别改错地方

Nginx配反代就两步:建配置文件、加两行关键指令。先别动默认配置,单独给站点开文件,以后好维护:

sudo vi /etc/nginx/conf.d/proxy8080.conf

下面这段内容整段复制,域名、端口按自己实际改,其余别手痒:

server {

/tablisten 80;

/tabservername yourdomain.com;

/tablocation / {

/tab/tabproxypass http://127.0.0.1:8080;

/tab/tabproxysetheader Host $host;

/tab/tabproxysetheader X-Real-IP $remoteaddr;

/tab/tabproxysetheader X-Forwarded-For $proxyaddxforwardedfor;

/tab/tabproxyset_header X-Forwarded-Proto $scheme;

/tab}

}

保存后别急着重启,先检查语法:

sudo nginx -t

看到“test is successful”再reload:

sudo systemctl reload nginx

此时把域名解析到服务器IP,访问域名,页面内容其实就是本地8080端口在干活,地址栏却干干净净不带端口号,反代完成。

常见502,多半是后端没回应

刷新页面突然报502 Bad Gateway,别急着骂Nginx,九成是后端服务没跑或者监听地址不对。先在本机curl一下:

curl -I http://127.0.0.1:8080

如果这里就卡死,说明服务没起来,或者只绑定了IPv6。把后端启动参数改成监听0.0.0.0:8080,再试,基本秒好。

加HTTPS,免费证书三分钟搞定

老板又说“浏览器地址栏得带锁”。Let’s Encrypt整一张免费证书,两条命令完事:

sudo yum install -y certbot python3-certbot-nginx

sudo certbot --nginx -d yourdomain.com

按照提示输入邮箱、同意协议,certbot会自动改配置,reload后https就能用。证书到期前它会自己续,不用人管。

性能再紧一扣,给Nginx加点料

访问量一上来,默认参数容易吃紧。顺手把几个关键值拉高,写进/etc/nginx/nginx.conf的http段:

workerprocesses auto;

workerrlimitnofile 65535;

events {

/tabworkerconnections 4096;

/tabuse epoll;

}

保存reload,连接数直接翻几倍,小服务器也能顶住突发流量。

一套配置直接带走

把上面步骤串起来,就是一套能落地的“CentOS+Nginx反向代理本地8080”方案。再啰嗦一遍关键文件路径,方便你抄完就走:

1. 站点配置:/etc/nginx/conf.d/proxy8080.conf

2. 主调优:/etc/nginx/nginx.conf

3. 证书自动续:systemctl list-timers | grep certbot

以后换端口、换域名,只改proxypass和servername两行,reload一秒生效,别的都不用动。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/41704.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~