你的位置:首页 > 互联网IT
nginx,nginx反向代理,nginx端口映射,nginx端口转发,nginx中转,nginx代理,nginx转发,nginx快速版本端口转发,nginx安装
系统:CentOS Stream,CentOS 9,CentOS 8,CentOS 10,CentOS 7
软件:nginx
功能:nginx快速版本端口转发
下载地址一:
官方网站
官方网站下载地址

CentOS 系统下安装与配置 Nginx 的详细教程,包含安装、基础命令以及常用配置说明。
一、 安装 Nginx
在 CentOS 中,通常可以通过 yum(CentOS 7)或 dnf(CentOS 8 / Stream)直接从官方或 EPEL 软件源安装。
1. 配置 Nginx 官方 Yum 源(推荐)
为了安装较新版本的 Nginx,建议先创建 Nginx 的官方 yum 仓库。
执行以下命令创建并编辑仓库文件:
sudo vi /etc/yum.repos.d/nginx.repo
在文件中粘贴以下内容(以 CentOS 稳定版为例):
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
提示:保存并退出(在 vi 中按 Esc,输入 :wq 回车)。
2. 执行安装命令
使用 yum(或 dnf)安装 Nginx:
sudo yum install nginx
方法一:临时忽略过滤规则(推荐,最快)在安装命令后加上 --disableexcludes=all 参数,强制忽略所有的排除规则:
sudo yum install nginx --disableexcludes=all
或者如果你使用的是 DNF:
sudo dnf install nginx --disableexcludes=all
安装过程中如果提示是否导入 GPG 密钥,输入 y 并回车确认。
安装 Stream 模块包
运行以下命令安装 Nginx 的 Stream 模块:
sudo yum install nginx-mod-stream
# 如果你使用的是新版系统(如 CentOS 8/9 Stream 或 Rocky Linux),也可以使用 dnf:
sudo dnf install nginx-mod-stream
Verification: 安装完成后,可以通过查看版本号来验证是否成功:
nginx -v
(成功时应输出类似 nginx version: nginx/x.x.x 的信息)
二、 Nginx 常用管理命令
安装完成后,可以通过 systemctl 来管理 Nginx 服务:
启动 Nginx sudo systemctl start nginx
停止 Nginx优雅停止(处理完现有请求后关闭):sudo systemctl stop nginx
快速停止(立即关闭):sudo pkill -9 nginx
或者直接强制杀死所有匹配的进程:sudo killall -9 nginx
重启 Nginx sudo systemctl restart nginx
重新加载 sudo systemctl reload nginx
查看状态 sudo systemctl status nginx
开机自启 sudo systemctl enable nginx
关闭自启 sudo systemctl disable nginx
卸载 Nginx 软件 sudo yum remove nginx
配置文件检查命令
在执行 reload 或 restart 之前,强烈建议先检查配置文件语法是否正确,避免因配置错误导致服务崩溃:
sudo nginx -t
Verification: 如果输出中包含 syntax is ok 和 test is successful,说明配置文件没有语法错误。
2. 测试访问
在浏览器中输入你的 CentOS 服务器 IP 地址(例如 http://你的服务器IP),若看到 Nginx 的欢迎页面 "Welcome to nginx!",则说明安装与配置成功。
四、 核心目录路径
主配置文件路径:/etc/nginx/nginx.conf
子配置文件目录:/etc/nginx/conf.d/(通常自定义的虚拟主机配置放在这里)
默认网站根目录:/usr/share/nginx/html
日志文件路径:
访问日志:/var/log/nginx/access.log
错误日志:/var/log/nginx/error.log
宝塔Nginx 反向TCP代理,怎么设置,教材
在宝塔面板中,后台图形界面(网站反向代理)默认是针对 HTTP/HTTPS 协议设计的。如果你需要实现 TCP 端口反向代理(例如代理 MySQL、Redis、SSH、游戏服务器或自定义 TCP 协议),则需要利用 Nginx 的 stream 模块(四层反向代理)来进行配置。
第一步:准备工作与放行端口
第二步:修改 Nginx 主配置文件
由于 stream 模块不能写在 http { ... } 内部,它必须与 http 块同级,因此我们需要修改 Nginx 的总配置文件。
登录宝塔面板,点击左侧菜单 “文件”。
找到 Nginx 的主配置文件路径:/etc/nginx/nginx.conf 并点击编辑。
在文件的最外层(即与 http { ... } 大括号同级别的地方,通常可以直接加在文件的最底部,或者文件的最顶部),追加 stream 配置块。
替换增加
----------
worker_processes auto; # 1核CPU配置1个Worker进程即可
worker_rlimit_nofile 65535; # 允许单进程打开最大文件数
events {
worker_connections 20480; # 单进程最大连接数,支持高并发1024-65535
use epoll; # CentOS 7 默认最高效的事件驱动模型
multi_accept on; # 尽可能多地接受连接
}
----------
----------
# 与 http{ ... } 块同级,放在最底部即可
stream {
tcp_nodelay on; #作用是 关闭 TCP 的 Nagle 算法,让小数据包立即发送,不等待合并。
# 优化 TCP 缓冲区,提升吞吐量
# 注意:CentOS 7 需确保内核支持,否则按默认或根据实际情况调整
# 1. 转发到 172.64.229.62:443 (通常是 Cloudflare 或其他 CDN/代理节点)
server {
listen 8443 reuseport so_keepalive=on; # 开启多路复用监听,减少多线程竞争
proxy_pass 172.64.229.62:443;
# 优化连接超时和代理参数
proxy_connect_timeout 5s; # 快速连接超时
proxy_timeout 600s; # 保持长连接
proxy_buffer_size 16k; # 提高单次读写缓冲区,适合大吞吐4k/8k/16k
}
# 2. 转发到内网 10.0.3.84:80
server {
listen 2086 reuseport so_keepalive=on;
proxy_pass 10.0.3.84:80;
proxy_connect_timeout 5s;
proxy_timeout 600s;
proxy_buffer_size 16k;
}
# 3. 转发到内网 10.0.3.84:23152
server {
listen 23402 reuseport so_keepalive=on;
proxy_pass 10.0.3.84:23152;
proxy_connect_timeout 5s;
proxy_timeout 600s;
proxy_buffer_size 16k;
}
}
----------
启动失败,可能是80端口被占用,修改80端口,或者删除80端口
位置:
server {
listen 80;
listen [::]:80;
server_name _;
参数说明:
listen 9999;:代表你的宝塔服务器会监听 9999 端口的 TCP 请求。
proxy_pass 192.168.1.100:3306;:代表把收到的请求原封不动转发到后端的 192.168.1.100 的 3306 端口(这里可以写内网 IP 也可以写公网 IP/域名)。
第三步:检查配置并重载 Nginx
修改完成后,必须先检查配置语法是否正确,再重启服务。
打开宝塔面板的 “终端”,或者通过 SSH 连接服务器,输入以下命令检查 Nginx 语法:
nginx -t
如果终端返回 successful 字样,说明配置无误。接着执行重载命令使配置生效:
sudo systemctl reload nginx
(或者直接在宝塔面板的“软件商店” -> “Nginx” 管理里点击“重载”)
在 CentOS 系统中,如果需要彻底卸载 Nginx,可以通过包管理器来完成。以下是卸载 Nginx 的详细步骤和命令:
1. 停止 Nginx 服务
在卸载之前,建议先停止正在运行的 Nginx 服务,以防残留进程占用文件:
sudo systemctl stop nginx
Verification: 运行 sudo systemctl status nginx,确认状态显示为 inactive (dead)。
2. 卸载 Nginx 软件
使用系统的包管理器(yum 或 dnf)卸载 Nginx 核心程序:
sudo yum remove nginx
(如果提示确认,输入 y 并回车即可)
3. 清理残留的配置文件和目录(可选)
remove 命令通常不会删除用户自定义的配置文件或网站日志。如果你希望彻底清除所有残留文件,可以手动删除以下目录:
警告:删除前请备份好你的网页源码 (/usr/share/nginx/html) 或自定义配置文件 (/etc/nginx),以免数据丢失。
# 删除配置文件目录
sudo rm -rf /etc/nginx
# 删除默认网站根目录
sudo rm -rf /usr/share/nginx
# 删除日志文件目录
sudo rm -rf /var/log/nginx
4. 移除 Yum 仓库源(可选)
如果你在安装时手动添加了 Nginx 官方的 yum 源文件,也可以将其一并删除:
sudo rm -f /etc/yum.repos.d/nginx.repo
最后执行清理缓存:
sudo yum clean all
参考来源:
项目地址:
官网地址:
参考地址:





- 发表评论
- 查看评论
【暂无评论!】发表评论: