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操作Mysql实例代码教程在线版(查询手册)
Feb 18 Python
详解Django的CSRF认证实现
Oct 09 Python
Python中flatten( )函数及函数用法详解
Nov 02 Python
Python XML转Json之XML2Dict的使用方法
Jan 15 Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
Aug 31 Python
Django choices下拉列表绑定实例
Mar 13 Python
Python响应对象text属性乱码解决方案
Mar 31 Python
jupyter lab的目录调整及设置默认浏览器为chrome的方法
Apr 10 Python
Python命名空间namespace及作用域原理解析
Jun 05 Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 Python
python实现按日期归档文件
Jan 30 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加密解密示例分享
2014/01/29 PHP
php生成圆角图片的方法
2015/04/07 PHP
百万级别知乎用户数据抓取与分析之PHP开发
2015/09/28 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
2017/11/10 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2007/02/15 Javascript
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
左右悬浮可分组的网站QQ在线客服代码(可谓经典)
2012/12/21 Javascript
input链接页面、打开新网页等等的具体实现
2013/12/30 Javascript
Jquery中ajax方法data参数的用法小结
2014/02/12 Javascript
JSON取值前判断
2014/12/23 Javascript
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
bootstrap datetimepicker实现秒钟选择下拉框
2017/01/05 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
AngularJS封装$http.post()实例详解
2017/05/06 Javascript
vue-cli之router基本使用方法详解
2017/10/17 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
JS多个表单数据提交下的serialize()应用实例分析
2019/08/27 Javascript
element ui分页多选,翻页记忆的实例
2019/09/03 Javascript
简述Vue中容易被忽视的知识点
2019/12/09 Javascript
微信小程序indexOf的替换方法(推荐)
2020/01/14 Javascript
element-ui 实现响应式导航栏的示例代码
2020/05/08 Javascript
谈谈node.js中的模块系统
2020/09/01 Javascript
python3.0 字典key排序
2008/12/24 Python
Python开发实例分享bt种子爬虫程序和种子解析
2014/05/21 Python
Python中关于使用模块的基础知识
2015/05/24 Python
Python实现图像几何变换
2015/07/06 Python
Python中flatten( )函数及函数用法详解
2018/11/02 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
python存储16bit和32bit图像的实例
2018/12/05 Python
电子商务专业学生的学习自我评价
2013/10/27 职场文书
军训的自我鉴定
2013/12/10 职场文书
软件售后服务承诺书
2014/05/21 职场文书
2015年度党员个人总结
2015/02/14 职场文书
会议通知
2015/04/15 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
小学五年级(说明文3篇)
2019/08/13 职场文书