Nginx配置报错:无效参数"service=",SRV记录引用疑问
Nginx上游SRV记录配置问题解决
核心结论
必须显式指定SRV记录的服务名+协议前缀,你当前的service=https写法不符合Nginx对SRV记录的解析规则。
问题原因
Nginx的service参数要求对应SRV记录的标准格式:_<服务名>._<协议>。SRV记录的完整格式是_service._proto.domain.,比如HTTPS服务的SRV记录通常是_https._tcp.gife.gi-me.app.,所以不能直接写https,必须写成_https._tcp。
修正步骤
- 验证SRV记录:先通过
dig SRV _https._tcp.gife.gi-me.app命令确认你的域名存在正确的SRV记录,确保GoDaddy配置的SRV记录前缀是_https._tcp(或你实际使用的服务/协议)。 - 修改Nginx配置:将upstream中的错误语句替换为:
upstream finalmvploadbalancer { server gife.gi-me.app service=_https._tcp resolve; }
额外注意事项
- 确保
resolver 172.16.0.23配置的DNS服务器能正确解析目标域名的SRV记录,否则即使参数正确也无法获取上游地址。 - 若你的SRV记录使用自定义服务名(比如
balance),则参数需对应写成service=_balance._tcp。
内容的提问来源于stack exchange,提问作者gettin2itwyd
相关产品推荐
相关产品推荐

