我们在访问大流量网站或者运营有较多数据的网站时候,偶尔会出现504 Gateway Time-out错误,这多是网站服务器配置不当导致的,下面分享一下504GatewayTime-out错误的解决方法。
代码释义504 Gateway Time-out就是字面意思,可以理解为网页请求超时,也就是浏览网站网页所发出的请求没有反应或者未响应,在网站程序层面来说,就是请求未能够执行相应的PHP-CGI程序,或者PHP-CGI程序未能做出相应的处理,又或者是CGI程序的响应处理结果未能够反馈到浏览器或者未能及时反馈到浏览器。
报错背景504 Gateway Time-out错误多是存在于Nginx网站服务器环境下,多与nginx.conf与php-fpm.conf设置是否正确合理有关。解决方法就是根据网站服务器性能及网站流量等诸多因素整合考虑,正确合理的设置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-fpm.conf中max_children与request_terminate_timeout两个重要参数的设置。这两个参数的设置需要我们根据PHP程序情况及服务器带宽状况综合考虑并计算出合理准确的值,才能够避免504 Gateway Time-out或者其他CGI无响应错误的出现。
先分析这一段时间公司的网络安全现状,最好以图表的方式列出开,接下来综合分析数据,列出各个设备在这段时间工作的维护经验和不足,切记,一定要写出当前存在的安全隐患,最后写出解决方案及维护成本计算包括负载测试,强度测试,数据库容量测试,基准测试以及竞争测试。负载测试,一种性能测试指数据在超负荷环境中运行,程序是否能够承担。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。
对计算机软件进行测试前,首先需遵循软件测试原则,即不完全原则的遵守。不完全原则即为若测试不完全、测试过程中涉及免疫性原则的部分较多,可对软件测试起到一定帮助。
因软件测试因此类因素具有一定程度的免疫性,测试人员能够完成的测试内容与其免疫性成正比,若想使软件测试更为流畅、测试效果更为有效,首先需遵循此类原则,将此类原则贯穿整个开发流程,不断进行测试,而并非一次性全程测试。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)