Django上线部署之IIS的配置方法


Posted in Python onAugust 22, 2019

环境:

1 .Windows Server 2016 Datacenter 64位

2 .SQL Server 2016 Enterprise 64位

3 .Python 3.6.0 64位

4.administrator用户,无域环境,最高权限

要求:

按照顺序部署

1 .安装数据库

2 .安装数据库客户端【SSMS】

3 .安装Python

4 .安装IIS

5.安装CGI

6.将源码拷贝至【C:\inetpub\wwwroot\MySite】

( MySite是自定义文件夹,wwwroot是IIS默认网站存放的文件夹,为避免权限问题,不建议变动)

7.cmd 执行:pip install -r requirements(安装依赖包)

8.cmd 执行:pip install wfastcgi

9 .cmd 执行:wfastcgi-enable(获取脚本处理器信息,第8步需要使用)

【scriptProcessor】

结构:<Python安装路径>\python.exe|<Python安装路径>\lib\site-packages\wfastcgi.py

例如:【d:\programs\python\python.exe|d:\programs\python\lib\site-packages\wfastcgi.py】

7.打开IIS管理器添加网站,网站名称为【MySite】,物理路径为【C:\inetpub\wwwroot\MySite】,选择IP和端口

8.在【C:\inetpub\wwwroot\MySite】文件夹下添加文件【web.config】,内容如下(【】内是需要替换的部分):

<?xml version="1.0" encoding="UTF-8"?>
 <configuration>
   <system.webServer>
     <handlers>
       <add name="Python FastCGI" 
           path="*" 
           verb="*" 
           modules="FastCgiModule" 
           scriptProcessor="【d:\programs\python\python.exe|d:\programs\python\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="【C:\inetpub\wwwroot\MySite】" />
     <add key="DJANGO_SETTINGS_MODULE" value="【项目名.settings】" />
   </appSettings>
 </configuration>

9.在网站【MySite】添加【static】虚拟目录

10.在【C:\inetpub\wwwroot\MySite\static】文件夹下添加文件【web.config】,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
 
 <configuration>
   <system.webServer>
     <!-- this configuration overrides the FastCGI handler to let IIS serve the static files -->
     <handlers>
       <clear/>
       <add name="StaticFile" path="*" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" />
     </handlers>
   </system.webServer>
 </configuration>

11 .在网站【MySite】添加【media】虚拟目录

12.在【C:\inetpub\wwwroot\MySite\media】文件夹下添加文件【web.config】,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
 <configuration>
   <system.webServer>
     <!-- this configuration overrides the FastCGI handler to let IIS serve the static files -->
     <handlers>
       <clear/>
       <add name="MediaFile" path="*" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" />
     </handlers>
   </system.webServer>
 </configuration>

权限相关的报错,执行如下三步:

13 .cmd 执行:%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers

14 .cmd 执行:%windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/modules

15.右键点击【MySite】,点击【编辑权限】,在【安全】选项卡里给IIS_IUSERS赋予【完全控制】的权限

总结

以上所述是小编给大家介绍的Django上线部署之IIS的配置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
跟老齐学Python之Import 模块
Oct 13 Python
python实现将内容分行输出
Nov 05 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
python文件的md5加密方法
Apr 06 Python
python实现多线程的方式及多条命令并发执行
Jun 07 Python
Python中不同进制的语法及转换方法分析
Jul 27 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
Apr 19 Python
python正则表达式之对号入座篇
Jul 24 Python
详解Python3注释知识点
Feb 19 Python
python+pygame实现坦克大战
Sep 10 Python
python修改FTP服务器上的文件名
Sep 11 Python
解析目标检测之IoU
Jun 26 Python
对python中UDP,socket的使用详解
Aug 22 #Python
python3的url编码和解码,自定义gbk、utf-8的例子
Aug 22 #Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 #Python
解决python 3 urllib 没有 urlencode 属性的问题
Aug 22 #Python
python爬虫增加访问量的方法
Aug 22 #Python
Python中字典与恒等运算符的用法分析
Aug 22 #Python
python实现通过flask和前端进行数据收发
Aug 22 #Python
You might like
用来解析.htgroup文件的PHP类
2012/09/05 PHP
利用谷歌 Translate API制作自己的翻译脚本
2014/06/04 PHP
php启用sphinx全文搜索的实现方法
2014/12/24 PHP
windows平台中配置nginx+php环境
2015/12/06 PHP
PHP简单处理表单输入的特殊字符的方法
2016/02/03 PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
2016/11/14 PHP
WAF的正确bypass
2017/01/05 PHP
PHP实现的解汉诺塔问题算法示例
2018/08/06 PHP
基础的prototype.js常用函数及其用法
2007/03/10 Javascript
用jquery与css打造个性化的单选框和复选框
2010/10/20 Javascript
js获取客户端外网ip的简单实例
2013/11/21 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
关于JS 预解释的相关理解
2016/06/28 Javascript
微信小程序页面传值实例分析
2017/04/19 Javascript
React Native使用百度Echarts显示图表的示例代码
2017/11/07 Javascript
AngularJs点击状态值改变背景色的实例
2017/12/18 Javascript
刷新页面后让控制台的js代码继续执行
2019/09/20 Javascript
Vue实现仿iPhone悬浮球的示例代码
2020/03/13 Javascript
原生js实现日期选择插件
2020/05/21 Javascript
js+html+css实现手动轮播和自动轮播
2020/12/30 Javascript
Python 40行代码实现人脸识别功能
2017/04/02 Python
100行python代码实现跳一跳辅助程序
2018/01/15 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
Python+Opencv身份证号码区域提取及识别实现
2020/08/25 Python
CSS3 实现的火焰动画
2020/12/07 HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
2019/05/27 HTML / CSS
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
HTML5标签嵌套规则详解【必看】
2016/04/26 HTML / CSS
Skip Hop官网:好莱坞宝宝挚爱品牌
2018/06/17 全球购物
什么是java序列化,如何实现java序列化
2012/11/14 面试题
毕业自我鉴定范文
2013/11/06 职场文书
经济信息系毕业生自荐信范文
2014/03/15 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
实名检举信范文
2015/03/02 职场文书
python神经网络Xception模型
2022/05/06 Python