django在产品中,有哪些强制性服务?

时间:2013-10-21 12:30:09

标签: mysql django apache django-admin

我是django / apache环境的新手。我正在准备必须使django应用程序正常运行的服务列表。

我能够在脑海中只获得其中两个。

1)mysqld - > mysql守护进程。

2)apache2 - > apache daemon。

您是否可以建议是否需要其他服务,否则django应用程序无法运行?

2 个答案:

答案 0 :(得分:0)

你也需要安装apache2 mod-wgsi:

$ sudo apt-get install libapache2-mod-wsgi

您必须启用apache2服务:

$ sudo a2enmod mod-wsgi  

并禁用默认网站 并传递给apache2配置和其他

答案 1 :(得分:0)

django是一个框架;一组允许您创建Web应用程序的工具 - 任何类型的Web应用程序。

没有所需的服务清单;但如果您从系统管理的角度提出要求;支持典型的 Python Web应用程序需要什么:

  1. 您需要一个兼容WSGI的运行时。如果您使用Apache,这可以是mod_wsgi; gunicorn或uwsgi。

  2. 如果您没有使用mod_wsgi(其进程由Apache控制),您可能需要一个进程管理器。

  3. 您需要一个能够托管应用程序静态资产的Web服务器。这可以是Apache,nginx,lighttpd或任何其他有能力的Web服务器。

  4. 大多数应用程序也会有某种数据库。这是什么数据库,取决于应用程序及其要求(并非所有数据库都支持django ORM的所有功能)。所以你必须检查每个单独的应用程序。您可以选择提供“标准”布局;例如MySQL版本xx.yy.也可能是应用程序正在使用外部托管服务器;在这种情况下,您的工作只是提供与远程主机的连接。

  5. 如果您可以处理上述4,那么您拥有主机大多数基于Python WSGI的Web应用程序的标准布局。

    请记住,虽然Python 3已广泛使用;大多数库仍处于移植过程中,因此确保您的服务器同时提供Python 2.7和Python 3运行时非常重要。

    您还应该确保Python(以及您支持的数据库服务器)的开发标头可用 - 如果Python应用程序在虚拟环境中运行(这是最佳实践),这很重要,因为驱动程序需要为每个虚拟环境编译。这同样适用于任何已编译的库(如PIL)。

    Django在文档中有一个很好的deployment section来帮助细节。