随着假期的临近,Joomla!领域中我们的一些忙碌的小精灵正在加班!如果你还没有注意到,Joomla! 3.2版本充满了新功能。不幸的是,其中一个功能存在问题,在发布前的测试中并未被发现。在9月和10月的后期开发阶段,进行了alpha、beta和发布候选测试周期,许多社区成员进行了测试以发现尽可能多的问题。但是,有一个问题被遗漏了,而且不幸的是这是一个大问题,导致一些用户在部署新站点时被锁定在他们的站点外,没有简单的解决方案来恢复访问权限。

让贡献者们感到困惑的是选择哪个方向来解决它。这个问题不仅仅是一个可以修补的bug。没有完全“正确”的答案。解决方案涉及要么

  1. 破坏向后兼容性,这意味着跳转到Joomla!版本4.0,而在这个新主版本中还有其他新功能也会破坏向后兼容性,开发者们更愿意在做出新主版本的尝试中包括这些功能(同时还要处理用户对预期的LTS版本编号为J!3.5或J!4.5的混淆);
  2. 要求提高服务器运行的PHP版本,这使得一些站点的一键升级不再适用,并且阻碍了发布未来无关的安全补丁的能力,或者
  3. 恢复密码加密的较低安全级别,这让我们拥有与J!1.5和J!2.5相同或稍好的安全性能,而实际上我们应该做得比这更好。

这些选项都不是理想的,生产领导团队(PLT)一直在纠结于选择哪个方向。最初认为需要一套修补程序的问题已经变成了比任何人预期的更大问题、一系列决定和社区教育。

好消息是,已经制定了一个计划,目前正在努力测试中。3.2.1升级将部分回滚3.2中的相关更改,并智能测试和调整正在使用的密码加密。此版本将解决大多数访问问题;然而,如果您因为更改PHP版本已经被锁定,我们无法自动恢复对您的网站的访问。

以下是在3.2.1发布之前,如何避免这些问题的临时建议。

我目前在Joomla! 3.2上运行一个生产站点

如果您已经安装或通过一键升级到Joomla! 3.2,并且一切正常工作,那么无需担心。您不会因为3.2而有任何新的漏洞。但是,如果您还没有在测试环境中开启强密码选项,并且没有检查您生产服务器上运行的PHP版本,请不要开启该选项。在设计和测试/预发布环境以及生产环境中运行PHP 5.3.7或更高版本的网站将在3.2.1版本发布后享受增强的安全性。

我目前正在使用Joomla! 3.2设计一个网站

并且您准备将网站部署到生产环境。这就是人们在将网站推送到运行四年旧软件的服务器时遇到账户锁定问题的地方。他们在开发环境中开启了强密码选项,因此他们的管理员密码和其他用户密码被高度加密,但是当他们迁移到运行非常旧的PHP版本(5.3.6及更低版本)的托管环境时,更高密码加密软件无法为他们提供访问权限。(由于一个现在在3.2.1中已修复的bug,密码重置无法解决这种情况,因为这个bug也无法正确访问密码加密方案。)

如果您是这样,并且您可以在部署前等待3.2.1,那就太好了,问题解决。或者,您可以要求您的托管公司升级您的服务器到PHP 5.3.7或更高版本,如果他们这样做了,也没有问题。否则,在开发服务器上关闭强密码选项,并使用前一等级的密码加密创建一个新的超级管理员账户。然后您可以迁移到低级别的托管服务器。在强密码选项启用时创建或更新的用户密码在部署到低级别服务器后无法工作。它们需要在迁移之前重置,或者在管理员的用户管理面板中重新输入。

对于已启用强密码选项的网站,有关如何禁用该功能的说明可在https://docs.joomla.org/How_to_disable_the_Strong_Passwords_feature找到。

我目前正在运行Joomla! 3.0/3.1网站

您可以一键升级到Joomla! 3.2并尝试所有新的精彩功能,只是在3.2.1发布之前不要开启强密码选项,或者检查您的服务器PHP版本并遵循上述指南。

我目前正在运行Joomla! 2.5网站

很好 - 您不受影响。由于2.5版本在长期支持之下,自从Joomla! 3.0发布以来,就没有向其中添加新的功能,如这段代码。

我目前正在运行Joomla! 1.5网站

确保所有用户也都在使用Internet Explorer 6!(开玩笑)跟上时代!Joomla! 1.5的支持已于2012年12月结束,因此我们鼓励用户将他们的网站更新到2.5或3.2。虽然软件已经不再受支持,但这并不意味着您的网站会停止工作。

Joomla! 3.2.1何时发布?

你的水晶球和我的差不多好。因为路径不清楚,这并不是预测实施所需志愿者小时数的问题。但情况还没有坏到需要美国国会就任何话题达成一致的程度。我们有一群出色的志愿者,他们勤勉地考虑这些决定的方方面面,并提出了适合所有用户场景的优秀解决方案。应该“很快”,可能是下周或是年初之后。

我们如何避免这种情况再次发生?

我们只是需要更多的人帮助测试和报告错误。当进行Beta版和发布候选版测试时,我们真的需要新人们在不同托管环境中“试车”。那些开发这些功能的团队成员已经在他们每天使用的环境中测试和调试了软件,因此我们需要新鲜的眼睛和服务器加入到这个过程中。

自愿测试!如果你能提供帮助,请加入我们用于宣布预发布测试的Google Group邮件列表。(这是一个低流量群组,所以你的收件箱不会被淹没。) https://groups.google.com/group/jtesters