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中的序列化与反序列化的使用
Jun 30 Python
Python实现大文件排序的方法
Jul 10 Python
python3爬取各类天气信息
Feb 24 Python
python2.7安装图文教程
Mar 13 Python
python 在指定范围内随机生成不重复的n个数实例
Jan 28 Python
使用python实现mqtt的发布和订阅
May 05 Python
Django框架教程之中间件MiddleWare浅析
Dec 29 Python
python实现删除列表中某个元素的3种方法
Jan 15 Python
Python多线程:主线程等待所有子线程结束代码
Apr 25 Python
pytorch 实现变分自动编码器的操作
May 24 Python
Python OpenCV 图像平移的实现示例
Jun 04 Python
Python线程池与GIL全局锁实现抽奖小案例
Apr 13 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
PHP中集成PayPal标准支付的实现方法分享
2012/02/06 PHP
php实现下载限制速度示例分享
2014/02/13 PHP
PHP6 中可能会出现的新特性预览
2014/04/04 PHP
ThinkPHP实现事务回滚示例代码
2014/06/23 PHP
PHP读MYSQL中文乱码的快速解决方法
2016/10/01 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
Laravel5.7 Eloquent ORM快速入门详解
2019/04/12 PHP
PHP单例模式实例分析【防继承,防克隆操作】
2019/05/22 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
web页面数据展示新想法(json)
2010/06/08 Javascript
jquery实现选中单选按钮下拉伸缩效果
2015/08/06 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
2015/10/16 Javascript
微信小程序开发探究
2016/12/27 Javascript
nodejs开发——express路由与中间件
2017/03/24 NodeJs
JS实现移动端整屏滑动的实例代码
2017/11/10 Javascript
浅谈Vue2.0中v-for迭代语法的变化(key、index)
2018/03/06 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
python的id()函数解密过程
2012/12/25 Python
Python编程中的文件读写及相关的文件对象方法讲解
2016/01/19 Python
django 2.0更新的10条注意事项总结
2018/01/05 Python
Python序列循环移位的3种方法推荐
2018/04/09 Python
Numpy掩码式数组详解
2018/04/17 Python
解决python ogr shp字段写入中文乱码的问题
2018/12/31 Python
python 实现将list转成字符串,中间用空格隔开
2019/12/25 Python
中邮全球便购:中国邮政速递物流
2017/03/04 全球购物
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
中学门卫岗位职责
2013/12/26 职场文书
教育课题研究自我鉴定范文
2013/12/28 职场文书
结婚典礼证婚词
2014/01/11 职场文书
道德大讲堂实施方案
2014/05/14 职场文书
团队合作精神学习心得体会
2016/01/19 职场文书
Golang 编译成DLL文件的操作
2021/05/06 Golang
Python 实现定积分与二重定积分的操作
2021/05/26 Python
Redis中缓存穿透/击穿/雪崩问题和解决方法
2021/12/04 Redis