---
title: "如何安装 Django"
version: 5.0
locale: zh-hans
source: https://docs.djangoproject.com/zh-hans/5.0/topics/install/
canonical: https://djangodocs.dev/zh-hans/5.0/topics/install/
---
# 如何安装 Django

本文档将帮助您使用 Django。

## 安装 Python

Django 是一个用于 Python 的网络框架。有关详细信息，请参阅 [我应该使用哪个版本的 Python 来配合 Django?](/zh-hans/5.0/faq/install/#faq-python-version-support)。

可以通过 <https://www.python.org/downloads/> 或者操作系统的包管理工具获取最新版本的 Python。

> **Windows 上的 Python**
>
> 如果您刚刚开始学习 Django 并且使用 Windows，查看 [如何在 Windows 上安装 Django](/zh-hans/5.0/howto/windows/)  可能对你有帮助。

## 安装 Apache 和 `mod_wsgi`

如果您只是想试验 Django，请跳到下一部分；Django 包含一个可用于测试的轻量级 Web 服务器，因此在准备好在生产环境中部署 Django 之前，您不需要设置 Apache。

如果您想在生产站点上使用 Django，请使用 [Apache](https://httpd.apache.org/) 与 [mod\_wsgi](https://modwsgi.readthedocs.io/en/develop/)。mod\_wsgi 有两种模式：嵌入模式和守护模式。在嵌入模式下，mod\_wsgi 类似于 mod\_perl -- 它将 Python 嵌入到 Apache 中，并在服务器启动时将 Python 代码加载到内存中。代码在整个 Apache 进程的生命周期内保持在内存中，这会比其他服务器配置方式带来显著的性能提升。在守护模式下，mod\_wsgi 会生成一个独立的守护进程来处理请求。守护进程可以以与 Web 服务器不同的用户身份运行，从而可能提高安全性。守护进程可以在不重新启动整个 Apache Web 服务器的情况下重新启动，从而可能使代码库的刷新更加无缝。请参考 mod\_wsgi 文档以确定哪种模式适合您的设置。确保已安装 Apache 并启用了 mod\_wsgi 模块。Django 将与支持 mod\_wsgi 的任何版本的 Apache 配合使用。

若已安装 mod\_wsgi 模块，请查看 [Django 如何利用 mod\_wsgi 工作](/zh-hans/5.0/howto/deployment/wsgi/modwsgi/) 了解如何配置。

如果由于某种原因你不能使用 mod\_wsgi，请不要担心： Django 支持许多其他部署选项。一个是 [uWSGI](/zh-hans/5.0/howto/deployment/wsgi/uwsgi/) ；它和 [nginx](https://nginx.org/) 配合使用很好。此外，Django 遵循 WSGI 规范（ [**PEP 3333**](https://peps.python.org/pep-3333/) ），允许它在各种服务器平台上运行。

## 运行你的数据库

如果你打算使用 Django 的数据库 API 功能，你需要确保一个数据库服务器正在运行。Django 支持许多不同的数据库服务器，官方支持 [PostgreSQL](https://www.postgresql.org/)、[MariaDB](https://mariadb.org/)、[MySQL](https://www.mysql.com/)、[Oracle](https://www.oracle.com/) 和 [SQLite](https://www.sqlite.org/)。

如果你正在开发一个小项目或不打算在生产环境中部署的东西，SQLite 通常是最好的选择，因为它不需要运行一个单独的服务器。然而，SQLite 与其他数据库有许多不同之处，所以如果你正在开发一些实质性的东西，建议使用你计划在生产中使用的同一数据库进行开发。

除了官方支持的数据库，还有 [第三方提供的后端](/zh-hans/5.0/ref/databases/#third-party-notes) 允许你在 Django 中使用其他数据库。

除了数据库后端，你还要确保安装了 Python 数据库绑定。

- 如果您使用 PostgreSQL，您将需要 [psycopg](https://www.psycopg.org/psycopg3/) 或 [psycopg2](https://www.psycopg.org/) 包。有关更多详细信息，请参阅 [PostgreSQL notes](/zh-hans/5.0/ref/databases/#postgresql-notes)。
- 如果你正在使用 MySQL 或 MariaDB，则需要一个像 `mysqlclient` 一样的 [DB API 驱动](/zh-hans/5.0/ref/databases/#mysql-db-api-drivers)。 详细信息参见 [MySQL 后端注意事项](/zh-hans/5.0/ref/databases/#mysql-notes)。
- 如果你正在使用 SQLite，则可能需要阅读 [SQLite 后端笔记](/zh-hans/5.0/ref/databases/#sqlite-notes) 。
- 如果你使用的是 Oracle，你需要安装 [oracledb](https://oracle.github.io/python-oracledb/)，但请阅读 [Oracle 后端的说明](/zh-hans/5.0/ref/databases/#oracle-notes) 以了解有关支持的 Oracle 版本和 `oracledb` 的详细信息。
- 如果你使用的是非官方的第三方后端，请参阅提供的文档以了解任何其他要求。

如果你打算使用 Django 的 `manage.py migrate` 命令为你的模型自动创建数据库表（首先安装 Django 并创建项目后），你需要确保 Django 有权限在你使用的数据库中创建和修改表；如果你打算手动创建表，你可以授予 Django `SELECT`、`INSERT`、`UPDATE` 和 `DELETE` 权限。创建具有这些权限的数据库用户后，你将在项目的配置文件中指定详细信息，详细信息参见 [`DATABASES`](/zh-hans/5.0/ref/settings/#std-setting-DATABASES)。

如果你正在使用 Django 的 [测试框架](/zh-hans/5.0/topics/testing/) 来测试数据库查询，Django 将需要创建测试数据库的权限。

## 安装 Django 源码

安装过程可能会有些许差异，这取决于你是否在安装一个发行版——某个特定的版本，下载最新的正式发布包，或获取最新的开发版本。

### 通过 `pip` 安装正式发布版本

以下是安装 Django 的推荐方式。

1. 安装 [pip](https://pip.pypa.io/)。最简单的方式是使用 [独立 pip 安装器](https://pip.pypa.io/en/latest/installation/)。若你的系统早已安装 `pip`，你可能需要更新它，因为它可能过期了。如果它过期了，你会知道的，因为过期的用不了。
2. 看一下 [venv](https://docs.python.org/3/tutorial/venv.html)。这个工具提供了隔离的Python环境，比在系统内安装包更实用。它还允许在没有管理员权限的情况下安装包。[贡献指南](/zh-hans/5.0/intro/contributing/) 介绍了如何创建一个虚拟环境。
3. 在你已创建并激活一个虚拟环境后，输入以下命令：

   ```console
   $ python -m pip install Django
   ```

   *Windows*

   ```doscon
   ...\> py -m pip install Django
   ```

### 安装特定发行版

查看 [特定发行版注意事项](/zh-hans/5.0/misc/distributions/) 以查看你的平台／发行版是否提供了官方的 Django 软件包／安装程序。 发行版提供的软件包通常将允许自动安装依赖项和且易于升级； 但是，这些软件包很少包含最新版本的 Django。

### 安装开发版本

> **跟踪 Django 开发**
>
> 如果你决定使用 Django 的最新开发版，你需要关注 [开发版时间轴](https://code.djangoproject.com/timeline) 和 [即将到来的新特性的发布说明](/zh-hans/5.0/releases/#development-release-notes)。这将保证你能获取所有新特性和最新的代码。（对于稳定发布版，所有必要的修改都在发布说明中记录。）

如果你希望偶尔能获取最新的补丁和改进，遵循以下说明：

1. 确保你已安装了 [Git](https://git-scm.com/)，这样你就可以从 shell 运行对应命令。（在 shell 中输入 `git help` 测试是否安装。）
2. 像这样检出 Django 的主开发分支：

   ```console
   $ git clone https://github.com/django/django.git
   ```

   *Windows*

   ```doscon
   ...\> git clone https://github.com/django/django.git
   ```

   这会在当前目录创建一个 `django` 目录。
3. 确保 Python 解释器可以加载 Django 的代码。最方便的方法是使用虚拟环境和 [pip](https://pip.pypa.io/)。 [贡献指南](/zh-hans/5.0/intro/contributing/) 简略介绍了如何创建虚拟环境。
4. 设置并激活虚拟环境后，运行以下命令：

   ```console
   $ python -m pip install -e django/
   ```

   *Windows*

   ```doscon
   ...\> py -m pip install -e django\
   ```

   这会让 Django 的代码可导入，使得 `django-admin` 命令行工具可用。换句话说，大事可为。

当你想更新你的 Django 源代码时，在 `django` 目录下运行 `git pull` 命令。当你这样做的时候，Git 会下载所有变更。
