在Windows Server上使用IIS+FastCGI部署Django

在Windows Server上使用IIS+FastCGI部署Django

作者:二赛君

0. 背景

针对Django的部署来说,Django官网建议不要使用runserver的方式来部署项目。这种方法没有经过安全审查以及性能测试,无法满足上线运行要求,只是在本地调试时使用。

而部署Django的方式有很多,本文将在windows server系统上使用IIS架构网站。

windows提供web服务的常规方式,如下所示,下面详细说明各个步骤。亲测有效。
在Windows Server上使用IIS+FastCGI部署Django_第1张图片

1. 创建django工程

在cmd命令窗口中输入
django-admin startproject test_dj
创建django工程
在这里插入图片描述

2. 测试能否运行

在cmd命令窗口中输入 python manage.py runserver 0.0.0.0:8000

打开浏览器,输入127.0.0.1:8000,显示如下图,则说明django运行正常。
在Windows Server上使用IIS+FastCGI部署Django_第2张图片

3. 简单设置一下

在test_dj文件夹下,新建views.py,写入如下代码

from django.http import HttpResponse

def home(request):
	return HttpResponse("Hello, this is 二赛君。

www.ersaijun.cn"
)

在urls.py 中进行配置,如下

from .views import home 

urlpatterns = [
	path('',home),
    path('admin/', admin.site.urls),
]

刷新浏览器,则会看到如下所示内容。

在Windows Server上使用IIS+FastCGI部署Django_第3张图片

4.新建服务器

新建服务器的时候选择web服务器IIS,同时一定要选择CGI模块。
在Windows Server上使用IIS+FastCGI部署Django_第4张图片

5.配置IIS管理器

添加网站。
在Windows Server上使用IIS+FastCGI部署Django_第5张图片

6.安装和配置fastcgi(重点)

  • 使用pip命令安装
    pip install wfastcgi
  • 复制wfastcgi到项目目录

在python安装路径中找到wfastcgi.py文件,路径如下图,并复制到你的项目文件下,和manage.py同级。
在Windows Server上使用IIS+FastCGI部署Django_第6张图片

  • 配置FastCGI映射

点击test_dj,找到处理程序映射,双击进入,在右侧点击添加模块映射
在Windows Server上使用IIS+FastCGI部署Django_第7张图片
在Windows Server上使用IIS+FastCGI部署Django_第8张图片
模块选择FastCgiModule,可执行文件填写你的python.exe路径和wfastcgi.py 路径,以 | 分割。请求限制选项中,取消映射选项卡中的选择框,记住一定要取消。
在Windows Server上使用IIS+FastCGI部署Django_第9张图片

  • 设置FastCGI环境变量

点击根节点,选择FastCGI设置
在Windows Server上使用IIS+FastCGI部署Django_第10张图片
找到刚添加的那行,右键编辑。在常规里找到环境变量,点击添加。这里需要添加三个环境变量。
在Windows Server上使用IIS+FastCGI部署Django_第11张图片
在Windows Server上使用IIS+FastCGI部署Django_第12张图片
在Windows Server上使用IIS+FastCGI部署Django_第13张图片
在Windows Server上使用IIS+FastCGI部署Django_第14张图片

注意PYTHONPATH为你的项目路径。

  • 设置应用程序池标志

点击应用程序池,在你的应用上右键,高级设置。进程模型的标识
选择LocalSystem。注意此项不选择,网站不会成功运行。(博主在此折腾许久)
在Windows Server上使用IIS+FastCGI部署Django_第15张图片
在Windows Server上使用IIS+FastCGI部署Django_第16张图片

7.设置权限,启动网站

最后设置下项目文件的权限,添加用户IIS_IUSRS控制权限。启动网站即可。
在Windows Server上使用IIS+FastCGI部署Django_第17张图片
在Windows Server上使用IIS+FastCGI部署Django_第18张图片
打开浏览器,访问网站的ip地址+端口号就可以访问啦。

至此部署完成。这只是完成基本的部署,还有一些高级的设置,比如设置并发数等,可自行探索。
在Windows Server上使用IIS+FastCGI部署Django_第19张图片

欢迎关注。二赛君原创整理发布,转载请注明出处。谢谢。如果文章对您有所帮助,欢迎打赏鼓励。
在Windows Server上使用IIS+FastCGI部署Django_第20张图片
在Windows Server上使用IIS+FastCGI部署Django_第21张图片
关注公众号获取全网最新动态

你可能感兴趣的:(django,网站建设)