从业几年,经常在行业群里听到某位客户的网站无法访问了,客户质问其服务提供商,沟通之后发现客户认为网站做好了,放在那里随时都可以访问,不应该出现无法打开的情况。网站稳定线上,从不出问题,这是每个客户的期望,谁希望自己的东西出问题呢,但是在网络世界里,一个网站突然无法访问很正常,原因多种多样,需要逐一分析,找出问题所在,网站便可恢复访问。
与客户谈需求的时候,由于合同还未签订,客户占主动,经常会问我们网站如果打不开了怎么办,为了让客户放心每次都要回答很多内容,网站打不开了,先分析问题,再处理问题,然后把解决办法与防御策略挨着说一次。几乎60%的客户,认为网站无法打开是建站公司的问题,工作马虎不负责。其实,不可一概而论,网站无法打开,建站公司要付多大责任呢?应该从出现问题的原因来看。
常见原因:1、502错误,2、域名解析问题,3、服务器配置出错,4、被攻击了,5、磁盘空间不足,6、内存不够,7、网速原因,8、升级维护。今天主要谈防御及快速恢复。
我们将每一个会造成网站无法访问的原因整理成了一个表格,技术人员严格按照执行,当出现网站无法打开时,便逐一检查。域名解析问题、磁盘空间不足、内存不足以及网速问题是我们能够立即处理并且应该保证的,磁盘不足就扩容,内存不足也是扩容,网速问题就看是客户本地速度还是服务器带宽不足,带宽问题可以增加带宽,或者将网站静态文件上传到对象存储服务器。而被攻击以及程序502等就需要程序员凭其经验来处理了,处理时间可长可短,完全看问题的严重性。在这种情况下出现的网站无法打开其责任不在网站建设公司,无论什么网站都会出现这两者问题,并且不可避免。当出现了502问题,我们应该根据不同的环境来找问题,我们使用的是lnmp环境,所以应该参考官网的502错误问题解决办法,也有一部分人发现无论怎么处理都无法解决502错误,这个时候我们应该恢复备份的网站数据,如果还是无法解决,我们应该将环境快照恢复即可,将整个系统恢复到出现问题之前的一个时间点。
企业网站更新频率不高,所以可以采用网站数据备份与整体环境备份的策略来保护数据以及快速恢复,是很好的选择。不用过多的去纠结错误代码,我们也没有那么多精力去处理各种各样的无法解决的错误代码。所以从根本入手,保护好网站数据以及环境数据,保护环境数据是为了快速恢复整体,因为出错的可能是你的服务器配置,而不是网站代码本身。
考虑到最坏的情况,服务器坏掉,数据全无,所以每个程序员都有备份数据的习惯。每周一备份,大更新一备份,并且数据存在两个地方,本地一份,OSS一份,充分保障数据安全。我们采用两种备份方式,一种是服务器快照备份,直接备份整台服务器环境与文件,恢复时间3分钟。第二种对每个站点备份,采用Linux命令压缩网站文件与数据库,再通过内网推送到OSS,较之传统备份与恢复效率大大提高。而快照功能的支持以及费用,目前阿里云已经做到了较为完善,备份所占用的空间由OSS支持。
如果是网络攻击,根据攻击方式的不同,处理办法有多种。可以选择暂时关闭网站,或者将首页改成文字说明,保留客户信任。由于DDOS攻击在一定程度上是拼资源,所以我们一般不会正面防御,而是采用OSS的静态网站功能来处理,将整个网站静态化,用OSS流量来抵消DDOS流量,不过OSS也是有峰值的,当达到峰值时,会停止网站访问,所以我们一般建议制作单页说明文字,使用OSS对静态网站的支持来展示网站。