Nginx 常见配置总结
1. 配置多个域名使用同一个端口
A. 应用场景:服务器上部署多个服务,但只想公网暴露一个端口,从而访问不同的业务;
B. 配置:
# nginx 443端口配置 (监听ab二级域名) server { listen 443; server_name ab.com; location / { proxy_pass http://172.17.0.1:8090; # 转发 } } # nginx 443端口配置 (监听cd二级域名) server { listen 443; server_name cd.com; location / { proxy_pass http://172.17.0.1:8070; # 转发 } }
2. nginx反向代理自制证书的https请求
return 307 https://ruxy/api
3. 配置UDP代理
stream { log_format udp '$remote_addr [$time_local] ' '$protocol $status $bytes_sent $bytes_received ' '$session_time "$upstream_addr" ' '"$upstream_bytes_sent" "$upstream_bytes_received"' '"$upstream_connect_time"'; access_log /var/log/nginx/udp-access.log udp; server { listen 2183 udp; proxy_pass rws-rhxy:17000; proxy_buffer_size 64k; } }
A. UDP代理也可以配置负载均衡,使用upstream,与http配置差不多;
B. proxy_buffer_size:设置缓冲区大小,曾遇到一个问题是Netty写的UDP协议接收报文,发现内容较大时被截断,调整代码缓冲区参数都没有用,想到被nginx代理看看是否这里有问题,果然增大该值就好了。