Nginx配置TCP请求转发
1.TCP请求转发基于stream在1.9版本前,需要单独编译安装该组建:
# 依赖服务 [root@baolin conf]#yum -y install pcre-devel openssl openssl-devel library # 用户 [root@baolin conf]#useradd nginx -u 1000 # 编译安装 stream 组建 ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-http_ssl_module --with-stream --with-stream_ssl_module
2.配置nginx.conf 实现TCP得请求转发
[root@baolin conf]# cat /usr/local/nginx/nginx.conf worker_processes 1; events { worker_connections 1024; } # 此为TCP转发请求 stream stream { # 后端指向 server 的 8085 端口 stream_backend 组 upstream stream_backend { server 10.50.2.11:8085; server 10.50.2.19:8085; } # 后端指向 server 的 8090 端口 cns组 upstream cns { server 10.50.2.11:8090; server 10.50.2.19:8090; } server { listen 443 ssl; proxy_pass stream_backend; # 指定key 和 crt 地址 ssl_certificate /etc/ssl/certs/my.crt; ssl_certificate_key /etc/ssl/certs/my.key; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; ssl_session_cache shared:SSL:20m; ssl_session_timeout 4h; ssl_handshake_timeout 30s; } server { # 本机监听端口 8080 listen 8080; # 请求抛给 stream_backend 组 proxy_pass stream_backend; } server { # 本机监听端口 8090 listen 8090; # 请求抛给 cns 组 proxy_pass cns; } } # 此为HTTP 转发请求 http http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; gzip_comp_level 9; gzip_types text/css text/xml application/javascript; gzip_vary on; include /etc/nginx/mime.types; default_type application/octet-stream; # 后端指向 server 的 8585 端口 cns_node 组 upstream cns_node { server 10.50.2.51:8585 weight=3; server 10.50.2.59:8585 weight=3; } server { listen 8585; server_name umout.com; access_log /etc/nginx/logs/server02_access.log main; location /{ index index.html index.htm index.jsp; proxy_pass http://cns_node1; include /etc/nginx/proxy.conf; } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
2015-07-01 Linux下出现Read-only file system的解决办法