Gallery:升级到2.0.x

来自站长百科
跳转至: 导航、​ 搜索

Gallery2.0.4带有一个重要的安全性补丁,推荐所有Gallery2版本使用。我们建议你尽快升级到该版本。

备份[ ]

升级过程应该是相当安全的。但有备无患,做好备份绝不是多余之举。因此在执行升级之前,你应当 备份数据库。一旦发生不测你可以随时回复数据库并重试。如果你对Gallery2代码拷贝做了修改的话,就应该对修改做备份以防更新过程会进行重写。

接下来: 识别你的Gallery2版本

识别你的Gallery2版本[ ]

为了能够进行升级,你需要了解你当前所使用Gallery2的版本。在浏览器中打开Gallery2,以管理员身份登入,点击"站点管理(Site Admin)"链接,接着点击"维护(Maintenance)"链接。现在你就会看到一个罗列有维护任务的列表了。在每个任务的旁边标记有系统信息(System Information),点击现在运行(run now)链接,接着查找标有Gallery version的一行。如果你运行的是某个官方发布版本的话,就会显示2.0,2.0.1,2.0.2或2.0.3。如果其中带有一个+号的话,如2.0+或2.0.1+,就表示你是安装自某个nightly快照版本。

接下来: 将你的文件更新至2.0.4

将你的文件更新至2.0.4[ ]

你所下载的升级文件版本必须与你当前所使用的Gallery2版本相符。

此文件包含有补丁以及所有已修改的文件,因此你可以使用任一方法进行升级。将此文件复制到你的web服务器上并将其解压到你的gallery目录下。根据升级起始版本的不同,该文件会包含以下文件中的部分或全部文件:

切记当你完成更新之后,应当将这些文件删除!保留它们虽无大碍,也不会造成任何安全性隐患,但留着它们也毫无用处。

将你的文件更新至2.0.4[ ]

有四种方法可以将文件升级到2.0.4。这些方法相对来说都很简单,但你应当根据自己的情况选择最好的方法。

  • 如果你是在一个Unix系统上的话,那么 应用一个补丁的方法将会既简单又迅速。我们会告知你如何进行操作,因此没有操作经验也无妨。
  • 如果你尚未对Gallery中的任何文件做过修改,或是你未对modules/core目录做任何修改的话,那么以下所有的方法都适用。
  • 如果你自己对一些文件做了修改的话,那就应该考虑一下应用一个补丁的方法,因为除非你所作的改动与我们所作的改动直接冲突,补丁加不应造成任何破坏。
  • 如果你是由某个nightly快照版运行的话,那就应该考虑一下替换所有文件的方法,因为我们无法确知我们的补丁对所有nightly快照版都能很好地适用。


注: 一般来说,如果你广泛地对Gallery2做了修改的话,那最好使用自CVS的Gallery2并采用通过CVS进行升级的办法。

选项一 仅替换被修改的文件[ ]

在zipfile中有更多名称类似"changed-files-xxx.zip"的zip文件。其中的每个都含有对某特定模块的修改。只要将这些解压到Gallery2目录下并按指导运行升级程序即可。此方法是相当的快速,因为仅有很少被修改的文件;然而,如果你修改了被替换的文件的话,那么所作的修改就会丢失。在Unix上你应这样做。

cd gallery2
unzip changed-files-core.zip
unzip changed-files-zipcart.zip    (如果它在更新中并且是使用zipcart)
接下来运行基于web的升级程序

选项二 替换所有文件[ ]

如果不确信的话,你可以下载一份完整的Gallery2.0.4的拷贝并直接将其解压到已有的Gallery2上,然后运行升级程序。此方法简单,彻底但是稍有些慢。另外,你对Gallery2所作的所有修改将在文件被替换之后丢失,但在本地目录中所作的模板改动不会受影响。

注: Gallery2整合包有四类(典型,最小,完整以及开发者)。你所下载的整合包类型应当与你之前所用的类型相同。如果你是从2.0.1开始升级并且使用zipcart模块(查看站点管理->模块或gallery2/modules目录)的话,那么就应当下载完整开发者整合包。

接下来: 运行基于web的升级程序

选项三 应用一个补丁[ ]

此方法的优势在于,它将会保留你所作的任何修改;但也有极罕见的例外,那就是你所作的修改与我们所作的作为此补丁一部分的修改之间发生冲突。

补丁文件很小,但要使用它,你的系统必须具有"patch"效用。这在Unix系统上市一个标准的效用,而如果你是在Windows系统上的话,你可以从Cygwin整合包中获取它。Solaris用户应当使用gpatch (GNU补丁, Solaris 10中的/usr/bin/gpatch)。

在升级文件中有类似名为"patch-xxx.txt"的.txt文件。所有更新都含有patch-core.txt。如果你是自2.0.1或更新版本更新上来的话,那么将也包含patch-zipcart.txt。将它们复制到你的Gallery2目录下接着做如下操作:

patch -p0 -s < patch-core.txt
patch -p0 -s < patch-zipcart.txt      (仅当你有一个modules/zipcart目录时)

输出是正常的。若返回任何东西的话就是错误了。如果你得到了错误,就应当在Gallery2论坛中与我们联系并取得帮助。

接下来: 运行基于web的升级程序

选项四 通过CVS进行升级[ ]

如果你有自CVS安装的Gallery2的话,仅需运行:

cvs update -Pd

这将会带给你最新的代码以及自2.0发布以来添加的所有新特点。如果你希望确保自己紧随2.0的话,可以按如下方法追踪2.0分支:

cvs update -Pd -r BRANCH_2_0

这将仅会带给你自2.0以来经修改的代码。

注: 执行此操作时请务必谨慎!如果你经常自CVS更新的话,当你返回2.0分支时可能会招致降级现象,这无疑会带来不小的麻烦。因此,请三思而后行。

接下来: 运行基于web的升级程序

行基于web的升级程序[ ]

一旦你的文件更新完了,在web浏览器中打开Gallery2,就会自动引导至升级程序。请按照如下指导操作。

在升级程序进行到第二步时,Gallery文件完整性检查应当显示成功。如果有列出缺失/被删除/被篡改的文件的话,你应当确保是你自己在拷贝中对这些文件做了修改。如果报告自modules/core/test目录有超过100个缺失文件的话,请确认你没有无意间将被修改文件的开发者整合zip安装至某源自最小化,典型或完整版本上。如果确实发生了这种情况,没关系!请返回并获取正确的zip文件,接着重试即可。

注: 如果你是自2.0.1或更新版本更新上来的话,那就有可能会看到某完整性方面的错误,警告你docs/LOCALIZING文件已过时。你可以安全地将此文件删除。

成功完成之后,你就会回到最新版本的Gallery2中,万事大吉了。