nginx配置tcp反向代理
修改nginx.conf文件:
#TCP反向代理是基于IP和端口号;这个设置不要设置在http模块中,tcp和http是两个独立的模块,不要设置在一起,即stream和http是并行的两个模块
stream {
upstream mysql-server { #定义后端服务器
server 192.168.38.37:3306 max_fails=3 fail_timeout=30s; #定义具体server
}
upstream mytest {
server 192.168.38.47:6379 max_fails=3 fail_timeout=30s;
}
server {
listen 3306; #监听本机所有IP的3306端口
proxy_connect_timeout 30s; #连接超时时间
proxy_timeout 30s; #转发超时时间
proxy_pass mysql-server; #这个名称mysql-server和要上面 upstream mysql-server 对应,表示接收到3306的数据后转到mysql-server 的配置
}
server {
listen 192.168.38.27:8888; #监听在本机的192.168.38.27的8888端口
proxy_connect_timeout 30s;
proxy_timeout 30s;
proxy_pass mytest; #8888端口的数据转到192.168.38.47:6379
}
} #stream结束
#下面是并行的http模块
http {
。。。。。。
}