简介
Django 是一个强大的 Web 框架,可以帮助您快速启动 Python 应用程序或网站。Django 包括一个简化的开发服务器,用于在本地测试代码,但对于任何与生产相关的事情,都需要一个更安全和功能强大的 Web 服务器。
在本指南中,我们将演示如何在 CentOS 7 上在 Python 虚拟环境中安装和配置 Django。然后,我们将设置 Apache 在我们的应用程序前面,以便它可以直接处理客户端请求,然后将需要应用程序逻辑的请求传递给 Django 应用程序。我们将使用 mod_wsgi
Apache 模块来实现这一点,该模块可以通过 WSGI 接口规范与 Django 进行通信。
先决条件和目标
要完成本指南,您应该有一个全新的 CentOS 7 服务器实例,并配置了一个具有 sudo
权限的非根用户。您可以通过运行我们的初始服务器设置指南来了解如何设置。
我们将在 Python 虚拟环境中安装 Django。将 Django 安装到与您的项目特定的环境中,可以使您的项目及其要求得到分开处理。
一旦我们的应用程序运行起来,我们将配置 Apache 与 Django 应用程序进行交互。它将使用 mod_wsgi
Apache 模块来实现这一点,该模块可以将 HTTP 请求转换为由一个名为 WSGI 的规范定义的可预测的应用程序格式。您可以通过阅读本指南中的链接部分了解更多关于 WSGI 的信息。
让我们开始吧。
从 CentOS 和 EPEL 存储库安装软件包
要开始这个过程,我们将从我们发行版的存储库中下载并安装我们需要的所有项目。这将包括 Apache Web 服务器、用于与我们的 Django 应用程序进行交互的 mod_wsgi
模块,以及 pip
,这是可以用来下载我们的 Python 相关工具的 Python 包管理器。
要获取 pip
,我们需要启用 EPEL 存储库,该存储库包含一些额外的软件包。您可以通过输入以下命令轻松完成:
sudo yum install epel-release
启用了 EPEL 存储库后,我们可以通过输入以下命令来安装我们需要的组件:
sudo yum install python-pip httpd mod_wsgi
配置 Python 虚拟环境
现在我们已经从存储库中获取了组件,我们可以开始处理我们的 Django 项目了。第一步是创建一个 Python 虚拟环境,以便我们的 Django 项目与系统工具和我们可能正在进行的任何其他 Python 项目分开。
我们需要安装 virtualenv
命令来创建这些环境。我们可以使用 pip
来获取它:
sudo pip