1、下载安装wfastcgi 包
pip install wfastcgi
2、在控制面版中开启IIS程序
2、控制面板中找到管理工具,打开IIS管理工具
3、在终端运行wfastcgi包
wfastcgi-enable //停止服务用:wfastcgi-disable
4、配置IIS服务器
说明:网站名称根据个人来取;物理路径就是你Django项目所在的目录
3.1在项目根目录下新建 "web.config" 配置文件,复制粘贴以下内容。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="Python FastCGI"
path="*"
verb="*"
modules="FastCgiModule"
scriptProcessor="d:\softwareinstall\python3.6.3\python.exe|d:\softwareinstall\python3.6.3\lib\site-packages\wfastcgi.py"
resourceType="Unspecified"
requireAccess="Script"/>
</handlers>
</system.webServer>
<appSettings>
<add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" />
<add key="PYTHONPATH" value="D:\SP\XNGY\Project" />
<add key="DJANGO_SETTINGS_MODULE" value="Project.settings" />
</appSettings>
</configuration>
以上代码要注意配置几个点:
第一个点就是我们运行 wfastcgi-enable,再终端得出的这个路径
第二个点就是Django项目的路径
第三个就是填项目的配置项,即settings;配置为:项目名称.settings
5、配置好IIS后,就可以在浏览器中输入127.0.0.1:8000就可访问了,但可能不会成功,可能会出现以下错误
解决办法:此时在管理员命令端输入
C:\windows\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers (即上图红圈内的模块进行解除。开始参考以下链接做法好像不得行,采用上面这种方法就可以了 https://www.cnblogs.com/wcwnina/p/10960242.html)
6、完成以上步骤后,可能还会有以下错误
解决办法:把程序开发功能全部打开
7.完成以上步骤后就可以访问网站了,但又有新问题出现了;
页面的静态文件加载不了,所以还需把静态文件加载进来
8、Django里收集静态文件
8.1首先在Django项目下的setting文件里写上收集的静态文件存放的路径
8.2在命令行执行 python manage.py collectstatic
执行该命令后会让输入YES/NO,确定是否收集,输入YES后,在上面填写的文件里就会有整个项目用到的静态文件了
8.3 然后再静态文件里加上一个web.config的配置文件,配置文件内容如下
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="Python FastCGI" />
</handlers>
</system.webServer>
</configuration>
配置完后,网页就可以正常浏览了。
以上配置本人亲测有效,感谢以下链接网友的分享:
基于Windows平台的Django本地部署和腾讯云服务器上部署(1):https://blog.csdn.net/qianbin3200896/article/details/81166066
Django Windows+IIS+wfastcgi 环境下部署: https://www.cnblogs.com/wcwnina/p/10960242.html
处理程序“FastCGI”在其模块列表中有一个错误模块“FastCgiModule”,错误代码 0x8007000d http://www.ks7.net/server/error/782.shtml