最近更新|下载排行|软件分类|安卓分类|收藏本站 三维下载 - 快速安全的软件下载中心,给您不一样的软件下载体验!
您的位置:首页>资讯教程>软件教程>504 Gateway Time-out什么意思 504 Gateway Time-out怎么解决

504 Gateway Time-out什么意思 504 Gateway Time-out怎么解决

2018/02/01 11:24:20编辑:三维下载资讯编辑

504 Gateway Time-out什么意思?相信很多网友都有过类似的经历,在打开一个常用的网址时,半天打不开,最后却弹出了nginx504 Gateway Time-out这个提示,到底怎么回事呢,一起来看看吧。

浏览器

大小:3.24MB语言:中文类别:网络浏览 5.0

点击进入

504 Gateway Time-out什么意思

不知道各们小伙伴们发现没有,一般出现这种情况的原因都是网站流量比较大的时候,通俗点讲,就是点击访问网站的人太多了。

就字面意思,我们可以理解为网页请求超时,也就是浏览网站网页所发出的请求没有反应或者未响应,在网站程序层面来说,就是请求未能够执行相应的PHP-CGI程序,或者PHP-CGI程序未能做出相应的处理,又或者是CGI程序的响应处理结果未能够反馈到浏览器或者未能及时反馈到浏览器。

504 Gateway Time-out怎么解决

如果你只是一个普通的网民,只是经常浏览这个网站突然出现这种情况的话,下面你就可以略过不看了,因为这并不是你电脑的问题,你能做的也只是坐在电脑前,等待网站技术人员尽快将问题修复就可以了。

而对于网站建设者而言,解决方案也有很多,下面以此为例:

504 Gateway Time-out错误多是存在于Nginx网站服务器环境下,多与nginx.conf与php-fpm.conf设置是否正确合理有关。504GatewayTime-out错误的解决方法就是根据网站服务器性能及网站流量等诸多因素整合考虑,正确合理的设置niginx.conf和php-fpm.conf配置。

进行正确合理nginx.conf配置,我们需要先了解和清楚我们网站服务器的配置性能,包括CPU、内存等,并对网站服务器进行必要的性能测试(可参考:vps主机性能测试方法详解),从而准确的掌握网站服务器自身性能状况;

其次,是通过网站统计代码的添加,分析段时间内网站流量状况,比如:百度统计、CNZZ站长统计等,掌握网站日流量及PHP-CGI请求的大概情况;

后,根据我们掌握的服务器性能状况及网络流量情况,合理的对nginx.conf中的下列字句进行合理正确的设置。

fastcgi_connect_timeout300s;

fastcgi_send_timeout300s;

fastcgi_read_timeout300s;

fastcgi_buffer_size128k;

fastcgi_buffers8128k;#8128

fastcgi_busy_buffers_size256k;

fastcgi_temp_file_write_size256k;

fastcgi_intercept_errorson;

这些字句的设置规定了PHP-CGI的连接、发送和读取时间限制,需根据服务器性能及网络流量综合考虑设置,时间设置过长会给网站服务器造成压力,导致网站响应缓慢,甚至服务器宕机;时间设置过短,则就会出现504 Gateway Time-out或者其他CGI无响应错误。

还有就是php-fpm.conf中max_children与request_terminate_timeout两个重要参数的设置。这两个参数的设置需要我们根据PHP程序情况及服务器带宽状况综合考虑并计算出合理准确的值,才能够避免504 Gateway Time-out或者其他CGI无响应错误的出现。通常情况下,般网站,可将request_terminate_timeou设置在900s左右,而max_children值根据服务器内存大小和CGI请求数目设置为合理的数值,般设置为800M左右。

浏览器加载缓存小知识

很多小伙伴对于网页的加载和缓存机制不是很了解,所以导致出了问题这后很迷茫,这里小编就给大家小小的科普一下吧。

它分为强缓存和协商缓存:

1)浏览器在加载资源时,先根据这个资源的一些http header判断它是否命中强缓存,强缓存如果命中,浏览器直接从自己的缓存中读取资源,不会发请求到服务器。比如某个css文件,如果浏览器在加载它所在的网页时,这个css文件的缓存配置命中了强缓存,浏览器就直接从缓存中加载这个css,连请求都不会发送到网页所在服务器;

2)当强缓存没有命中的时候,浏览器一定会发送一个请求到服务器,通过服务器端依据资源的另外一些http header验证这个资源是否命中协商缓存,如果协商缓存命中,服务器会将这个请求返回,但是不会返回这个资源的数据,而是告诉客户端可以直接从缓存中加载这个资源,于是浏览器就又会从自己的缓存中去加载这个资源;

3)强缓存与协商缓存的共同点是:如果命中,都是从客户端缓存中加载资源,而不是从服务器加载资源数据;区别是:强缓存不发请求到服务器,协商缓存会发请求到服务器。

4)当协商缓存也没有命中的时候,浏览器直接从服务器加载资源数据。

好了,以上就是小编为您带来的所有内容了,希望能对你有所帮助。