1panel:版本1.7.4.
在面板中设置反代 www.google.com。一直502错误。
查看日志显示一直在用ipv6去连接google,但服务器本身没有分配ipv6地址。
查了网上各种办法,在配置文件中加:
resolver 8.8.8.8ipv6=off;
也没有用,它还是要用ipv6的地址去访问google.
我全网都搜索完了,真的没有办法了。
错误日志:
2023/11/01 23:31:26 [error] 23#23: *273 connect() to [2607:f8b0:4004:c08::6a]:443 failed (101: Network is unreachable) while connecting to upstream, client: 103.172.41.152, server: hello.xxx.cc, request: “GET / HTTP/2.0”, upstream: “https://[2607:f8b0:4004:c08::6a]:443/”, host: “hello.xxx.c以”
反代没有ipv6的网站没有问题,已经试过。
就只有一种法子没试了,就是在docker的宿主主机上完全禁用ipv6.
不知道对docker有没有影响。
风铃
2
反代的都是域名或者ip,跟ipv6啥关系。
你得看你服务器有没有获取到ipv6这是第一点,第二点:有的网站不支持ipv6访问
1: 我反代的是google,绝对支持ipv6.
2:我的主机本身不支持ipv6,所以我一直想让openresty以ipv4的方式去访问google.
3:搜索全网后都是给的结论,在配置文件中加: resolver 8.8.8.8ipv6=off;
4:加上面那个配置没有用。
=====最后的解决方案:直接在主机上完全彻底的禁用ipv6,具体方式也是网上搜索的。
另外在反代相关的设置中,还有一个巨坑:
在填要要反代的网址时,后面有一项必填的"后端域名",里面默认填了$host这个变量。这是一个巨坑!
这里要直接填反代目标网站的域名,比如www.google。如果是$host,在配置文件中会变为你自己的域名,在google中那里不会通过,反代会失败。
1panel问题确实还很多。
风铃
4
好像没那么复杂,你用的操作系统是什么,配置网卡的时候,直接设置静态ip,把ipv6都删了 应该就可以了
这个不是1panel的问题,是openresty的。
github上这样的问题有好几例。
现在已经解决了,就是禁用ipv6.