Nginx配置UDP反向代理报错:invalid parameter 'udp' 求助
解决Nginx UDP反向代理配置报错问题
错误原因分析
你遇到的invalid parameter "udp"错误,主要有两种可能:
- Nginx版本过低,不支持Stream模块的UDP代理功能(Nginx 1.9.13及以后版本才添加UDP Stream代理支持);
- 配置文件中混入了Stream模块不支持的HTTP模块指令,导致解析异常。
具体解决步骤
1. 检查Nginx版本与编译模块
- 查看Nginx版本:
如果版本低于1.9.13,需要升级Nginx到最新稳定版。nginx -v - 查看编译参数,确认是否包含Stream及UDP支持:
输出中需包含nginx -V--with-stream和--with-stream_udp_module(部分新版本默认包含,无需单独指定)。
2. 修正配置文件
Stream模块的server块不支持HTTP模块的server_name指令,且重复的上游服务器配置无意义,修改sites-available/proxy内容如下:
upstream dns { server 127.0.0.1:4567; } server { listen 53 udp; listen [::]:53 udp; proxy_pass dns; }
3. 验证配置并重启Nginx
- 测试配置文件合法性:
nginx -t - 配置通过后重启Nginx:
systemctl restart nginx
内容的提问来源于stack exchange,提问作者Mnemosyne
相关产品推荐
相关产品推荐

