如何将本地Django网站迁移到另一台机器?

14 投票
2 回答
24468 浏览
提问于 2025-04-16 10:56

我一直在努力寻找解决我问题的方法,但一直没有找到。我在我的电脑上用Django做了一个网站。现在我想把这个网站安装到另一台电脑上。我使用的数据库是MySQL。请问我该如何把本地的Django网站转移到另一台电脑上呢?如果这个问题之前已经讨论过,我在这里表示歉意。

2 个回答

3

这叫做“部署”。有很多方法可以做到这一点,其中一些方法在http://docs.djangoproject.com/en/dev/howto/deployment/上有详细说明。还有http://djangobook.com/en/2.0/chapter12/,提供了一些更一般的信息。你选择的方式会根据你的服务器支持的内容而有所不同。

你可以把这些作为起点,然后如果遇到问题,可以在这里反馈,这样我们就能帮你解决。

更新:部署你的应用程序(也就是让它在实际服务器上运行)所需的具体步骤取决于你的服务提供商。大致步骤是设置你的网络服务器来提供应用程序,配置数据库并填入正确的值,然后启动网络服务器。具体的操作步骤会根据你的服务器而不同(比如他们使用什么样的前端网络服务器,如何编辑它的配置,是共享主机还是虚拟专用服务器(VPS),你是否有命令行访问权限等等)。这里有一个在webfaction(一个流行的Python共享主机提供商)上操作的例子。

http://docs.webfaction.com/software/django/getting-started.html

17

要在另一台机器上搭建相同的Django网站,你只需要把代码复制过去。当你尝试运行它时,如果有任何设置不正确,就会出现错误,你可以一个一个地解决这些错误。你可能会遇到的一些常见错误包括:

  1. 确保新机器上安装了Python
  2. 确保安装了Django和其他依赖项
  3. 你需要在新机器上安装MySQL并设置一个数据库
    • 数据库的详细信息(名称、用户、密码)会在你项目的settings.py文件中
    • 如果数据库的主机不是localhost127.0.0.1,你需要考虑把新数据库放在哪里
  4. 确保你设置了一个指向新机器的URL,除非它只是用于开发(在这种情况下,你可以通过manage.py runserver使用Django内置的开发服务器)
  5. 确保apache或你选择的服务器设置正确

这些步骤基本上就是重复你在旧机器上做过的事情。

如果你有一台“开发”机器和一台“生产”机器,建议考虑一些自动化的部署解决方案,这样可以简化很多流程。如果代码还没有放入版本控制系统(比如Gitmercurialsubversion),你也应该把它放进去,这样你就可以在任意位置管理源代码的更改。

如果你想在两台机器上拥有相同的网站(也就是说对其中一台的更改会在另一台上显示),你可能需要考虑“负载均衡”。你需要设置另一台服务器来分配请求到这两台机器,并让它们都指向同一个数据库。

撰写回答