给我一个nginx反向代理mysql数据库的demo端口3306
以下是一个nginx反向代理mysql数据库(端口3306)的示例配置:
server {
listen 80;
server_name example.com;
location /mysql {
proxy_pass mysql://127.0.0.1:3306;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
解释一下上面的配置:
listen:监听的端口,这里是80端口。server_name:要代理的域名,这里是example.com。location /mysql:代理的位置,所有以/mysql开头的请求都会被代理。proxy_pass:代理的地址,这里是本地的mysql数据库,端口为3306。proxy_set_header:设置代理请求头,这里设置了Host、X-Real-IP和X-Forwarded-For。
请注意,使用nginx反向代理mysql数据库并不是最佳实践,因为mysql协议并不是HTTP协议,而是TCP协议。反向代理TCP协议需要使用其他工具,如HAProxy
原文地址: https://www.cveoy.top/t/topic/gYMH 著作权归作者所有。请勿转载和采集!