浏览器访问出现504错误怎么解决
「打开后台一直转圈,最后跳出来一个 504,刷新几次都一样。」
这句话里已经有两条信息:等在转圈,说明请求发出去了;刷新几次都一样,说明不是偶发。浏览器访问出现504错误怎么解决,就从这两条往下走。
504 是网站挂了还是没挂?
多数时候没挂。504 是网关等上游,等到超时才回的码。整站都 504 时另说,那可能是网关自己撑不住了。
那么先看首页能不能开。首页正常、只有某个页面 504,问题就在那个页面对应的接口。
首页也 504,再看是整站还是只有这一个入口。两件事别混。
网关等上游,还是上游在算?
三层:浏览器等网关,网关等上游,上游在算。网关自己也可能卡,连接池满了同样会超时。
那么看两个数:网关的超时值,和上游那条请求自己跑多久。
用宝塔拨测的网站测速跑一次,五段耗时和状态码是分开给的,先看首字节那一段。
上游耗时比超时值长,就改一处:让上游快一点,或者把超时值放长一点。放长只是缓解,不是修好,用户还会等更久。
为什么改完超时值,过几天又回来了?
<figure><img src="https://image.bt.cn/20261112/98d44ddaf3f49a2471acd71b9818ef83.svg" alt="示意图:超时值是横线,上游耗时在上涨,把线画高也会被再次越过" loading="lazy" width="1200" /><figcaption>线画高了,涨上去照样越线。</figcaption></figure>
因为上游的耗时还在涨。超时值只是把线画高一点,线画高了,涨上去照样越线。
那么隔两三天再看一次上游的耗时。涨了,就回去查那一批请求在做什么。
也可能是数据量变大、某个任务变长,或者超时值被人改回去了。这一段跟网络无关,改线路没用。
现在打开那个页面,把 504 那一条的耗时记下来,再看网络面板里它的上游耗时,两个数一比,就知道该改哪一边。