【问题标题】:Deploying Django Project部署 Django 项目
【发布时间】:2012-07-30 09:40:55
【问题描述】:

我有一个 django 项目,我想将它部署在 apache2 Http Server 上。

但是,我想自动将所有 python 文件从某个目录复制到 apache srv 目录,即 /srv/www/myproject。有没有自动python工具可以解决这个问题。

我查看了 DistUtils 和 setup.py,但我不确定如何将所有 .py 文件(连同目录结构)复制到 apache 目录。

任何帮助将不胜感激!!!

【问题讨论】:

  • 使用 DistUtils,您可以创建安装程序。但是你必须以某种方式分发包。如果使用基于 RPM 的 Linux,您可以使用 rpmbuild -ba build.spec 创建一个 .rpm 包,但这需要更多关于 RPM 系统的知识。一个更简单的方法是使用fabric,如下所示。

标签: python apache2 web-deployment


【解决方案1】:

看看fabric,它是一个很好的自动部署工具

【讨论】:

    【解决方案2】:

    来自 django 教程:

    如果你的背景是 PHP,你可能习惯于放代码 在 Web 服务器的文档根目录下(在 /var/www 等位置)。 使用 Django,您不会那样做。放任何东西都不是一个好主意 这个 Python 代码位于 Web 服务器的文档根目录中,因为它 冒着人们可能能够查看您的代码的风险 网络。这不利于安全。

    将您的代码放在文档根目录之外的某个目录中,例如 /home/mycode.

    对于复制文件,您可以使用 FTP/SCP 之类的简单工具,您可以将其自动化;或者您可以使用更全面的部署选项,例如fabric(有关fabric + virtualenv + apache mod_wsgi 的分步指南,请参阅this blog entry)。

    您可以使用任何工具来自动执行任务;但请将代码放在相应的非网页可浏览目录中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-11
      • 2016-10-01
      • 2016-02-21
      • 2020-10-24
      • 2020-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多