我在想办法让更新WordPress对我来说不那么可怕。在我的职业生涯中,我创建了大约30个基于WP的公司网站,我觉得在安全方面对它们负有一定的责任。即使客户不付我维护费——每隔几个月点击一次“更新”按钮也没什么大不了的,对吧?
出于以下几个原因,我一直抵制升级
如果网站在更新过程中出现故障,客户通常不愿意支付修复所有故障所需的时间。“它确实有用,你为什么要改变它?!”唯一的选择是回滚并锁定站点。
如果有什么东西破坏了网站,而我没有注意到,我就完蛋了。我不想再解释为什么更新后的联系方式在几周内不起作用了。
公司网站的更新通常不是强制性的。大多数安全问题都发生在用户提交的内容、ajax和xml rpc API上,这些都是我在创建每月只能访问几百次的静态页面时不必考虑的问题。这些网站往往闲置,这当然增加了更新的风险。我对更新一个只有2个月历史的网站没有问题,但我对更新一个运行3.0之前甚至2.7之前的2年历史的网站感到抵触这使得这场比赛我没有什么可赢的,只能输掉。
你是怎么处理的?非常感谢您的任何建议,这些建议有助于更安全的WP安装?:)
(为了清楚起见:我这里主要谈论的是小公司网站或私人博客,其中自动化测试不是一个现实的选择)
最合适的回答,由SO网友:Matthew Boynes 整理而成
就你的具体情况而言,我认为答案不是技术性的(更多细节请参见我对问题的评论)。
对于其他人来说"How can I easily verify a core or plugin update has not broken anything?" 是自动测试。这就是自动化测试的全部目的,因为认为您可以以非自动化的方式测试所有内容是不合理的。
下面是一个关于WordPress自动测试的入门指南:http://make.wordpress.org/core/handbook/automated-testing/
如果你不愿意走这条路,至少,我的建议是让你的客户列出他们网站最重要的三件事,并在合同中包括你将在每次更新时测试这三件事。这并不能保证某些东西不会破裂,但至少你可以轻松地知道(他们自己承认)对他们来说最重要的东西,比如联系方式,不会破裂。