kangle 做cdn用 报错信息是 504 cann't recv head from remote server
用的时候遇到一个问题是,会偶发性的出现无法连接源站的情况,报错信息是 504 cann't recv head from remote server cdnbest节点回源出现504,利用curl检查节点服务器和源站网络通讯是否异常,kangle反代报错https://bbs.itzmx.com/forum.php?mod=viewthread&tid=91449&fromuid=1
具体可以根据这个诊断一下,出现504 cann't recv head from remote server的原因只有一个,网络原因导致 小樱 发表于 2021/6/22 19:02
cdnbest节点回源出现504,利用curl检查节点服务器和源站网络通讯是否异常,kangle反代报错
https://bbs.it ...
只是偶发性的出现 白同学 发表于 2021/6/22 19:51
只是偶发性的出现
建议更换节点服务器为相同地域,甚至内网中使用会更好。 小樱 发表于 2021/6/22 20:39
建议更换节点服务器为相同地域,甚至内网中使用会更好。
目前用的这家机房把硬防和软防都调整过了。这两天换了家机房也开了台机器试了下,还是会出现这个错误。其他站长那里用了这个软件的,也有这个错误。现在还是比较怀疑是软件本身问题。在机器上抓了下网络包,也能看到,节点这边总是会在还没接收完数据的时候,主动断开了。 白同学 发表于 2021/6/23 10:20
目前用的这家机房把硬防和软防都调整过了。这两天换了家机房也开了台机器试了下,还是会出现这个错误。其 ...
软件这边没有任何问题的,开源的,你可以对下源代码,软件这么多人用,也没其他人遇到你这个问题,也没见你说的所谓的其它站长也有遇到这个问题。
其实想起来针对504还有一种原因就是长连接引起的,如果CDN中启用了长连接回源,但是源站服务器长连接时间比CDN回源长连接要更短,就会导致被源站主动进行数据传输强行中断,导致CDN中无法获取到完整数据传输完成。
和你所说的有点像,CDN中默认是短连接回源,你看看你是不是设置了长连接?改成短连接试一下,或者把源站服务器中的长连接时间拉长,例如源站输出为60秒
可以参考这篇帖子,有提供详细的网络抓包数据进行分析长连接导致504原因
https://bbs.itzmx.com/thread-20535-1-1.html
小樱 发表于 2021/6/23 18:54
软件这边没有任何问题的,开源的,你可以对下源代码,软件这么多人用,也没其他人遇到你这个问题,也没 ...
上周还不知道是什么原因的时候,就已经尝试过了,加到了5分钟还是10分钟
TCP的packet是会重传的,CDN到源的网络也测过很多遍了,延迟不高,也没有出现丢包严重的情况
从报文上看是cdn主动中断的,不是源主动中断的。用短连接回源的话,连接超时情况会更严重,CDN一般默认是长连接。然后超时时间两边是一致的,没有不一样。
用nginx开了一台,也有一些超时,但是几个小时有那么一次。这个软件的频率大概是1小时几百上千次
加大源站长连接是为什么? 白同学 发表于 2021/6/24 15:09
上周还不知道是什么原因的时候,就已经尝试过了,加到了5分钟还是10分钟
TCP的packet是会重传的,CDN ...
你都更换软件测试过了,包括nginx都有问题,这个很明显就是网络原因导致的了。。只能通过换服务器解决了,特别是带DDOS防御的服务器一律不要,容易误封拦截
延迟不高,ping没有丢包,不代表TCP没有丢包,没有出现拦截情况,如果是Windows服务器部署CDN,测试tcp可用psping命令来进行测试
CDN机器中断的报文你发上来看一下,看看是机房网络原因中断还是CDN软件中断的,CDN中断默认值60秒内未收到源站响应的数据,并且重试5次后依旧未收到数据时,CDN则会发送一个TCP信号通知系统进行中断访问并跳出504回源出错提示。
加大源站长连接是HTTP协议规范,源站长连接一定要比CDN时间长,否则会被源站强制中断,上方帖子内有发了具体的抓包数据,建议用短链接上游回源,用户访问启用长连接(回源和访问是两种不同的设置不要搞混)。
论坛用的都是kangle,你看访问也没出问题啊,源站美国,CDN是法国,跨越了200ms的距离,都没有跳出这种网络错误。
测试:https://bbs.itzmx.com/
设置短连接回源方法参考这个帖子:https://bbs.itzmx.com/thread-98237-1-1.html
mark_host试了下没有用 这个。。。 会不会是配置的问题,你们没问题的配置是咋样的
页:
[1]