将Drupal安装从一台服务器复制到另一台服务器

时间:2010-04-09 08:17:29

标签: drupal drupal-6

我一直在使用XAMPP在我的电脑上开发Drupal 6网站。我现在已经完成了,一切看起来都很好看。

问题是,我需要将我的所有内容(包括自定义模块和主题)放到一个仅在其上安装了新的Drupal 6的登台服务器上。我无法想象必须在登台服务器上重新设置我的所有自定义内容类型。

所以我问,如何做我需要做的事情?这基本上是从我的PC到登台服务器重复我的Drupal安装。

登台服务器正在运行Linux,我在Windows PC上开发,如果有帮助的话。

提前致谢。

4 个答案:

答案 0 :(得分:3)

将所有文件从开发复制到live,mysqldump你的数据库并在实时服务器上运行它。然后你要做的就是将settings.php文件更改为指向正确的数据库,如果由于某种原因'localhost'也不是你的mysql数据库。

答案 1 :(得分:0)

最快的解决方案可能是backup_migrate module。它只是复制数据库的工具。如果你愿意,你也可以使用phpmyadmin或类似的。 backup_migrate模块确实有一些很好的默认设置,可以跳过哪些表(比如缓存表)。代码中未定义的所有设置等都存储在数据库中。所以你只需要复制要设置的数据库。如果您不想将测试数据带回来,可以选择排除某些表,例如节点或用户表。

答案 2 :(得分:0)

如果你不使用subversion,那么你必须手动复制文件(rsync,scp,等等)和db(mysqldump)。

我们通常做的是具有独立的subversion repos的层次结构,如下所示:

  • 站点/所有/模块/贡献
  • 站点/所有/模块/自定义
  • sites / all / themes /(我们开发自己的,不使用贡献的主题)
  • 站点/所有/库

然后我们使用svn:externals属性,这样如果你查看“核心”,你会得到每个相关的回购。

我们有大约2个主要开发人员和另外4个可能也为该网站贡献代码的人。每个人都有他们自己的本地开发环境,我们都有一个共同的沙箱 - 我们确保我们写的东西不会破坏别人的模块(之前发生过!)。

我们使用svn commit hooks在提交时更新beta / staging / sandbox站点。

通过所有设置,[重新]部署网站是一个简单的问题,即转到正确的文件夹并发出“ svn co http://repolocation/reponame”,然后更新数据库。

最后要考虑的两件事:

  • 我们正从svn转到git
  • features module将允许您保存对自己的模块(视图,内容类型等)所做的更改,并将所有这些更改打包到可部署模块中,这样您就不必重复工作。我们也在考虑自己使用它。

我希望这会对你有所帮助。

答案 3 :(得分:0)

我第二次使用backup_migrate。太棒了。

当我从开发到生产安装新网站时,我:

  • 使用backup_migrate模块备份站点
  • 将所有文件复制到服务器
  • 编辑sites / default / settings.php以获得正确的数据库路径和帐户信息
  • 导入最后一个backup_migrate转储(通常使用mysql< backupfilename.sql,除非我已经安装了drupal并安装了backup_migrate,然后我使用GUI

但请看这里正式版:

http://drupal.org/node/776864

现在,你没有问,但是当网站是实时的并且用户正在贡献内容时,将网站的未来开发版本从开发/登台转移到生产而不会吹走实时内容是一个完全不同的问题,并且Drupal对......没有好的答案。

安迪 -