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脚本
Feb 10 Python
Python ZipFile模块详解
Nov 01 Python
python笔记:mysql、redis操作方法
Jun 28 Python
Python创建一个空的dataframe,并循环赋值的方法
Nov 08 Python
python for循环输入一个矩阵的实例
Nov 14 Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 Python
pandas 数据索引与选取的实现方法
Jun 21 Python
tensorflow 限制显存大小的实现
Feb 03 Python
python dumps和loads区别详解
Feb 04 Python
解决Pycharm 运行后没有输出的问题
Feb 05 Python
Python中使用ipython的详细教程
Jun 22 Python
Python Pandas 删除列操作
Mar 16 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
后宫无数却洁身自好的男主,唐三只爱小舞
2020/03/02 国漫
php截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
PHP实现文件下载断点续传详解
2014/10/15 PHP
php中header设置常见文件类型的content-type
2015/06/23 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
Paypal实现循环扣款(订阅)功能
2017/03/23 PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
2020/10/30 PHP
js计算两个时间之间天数差的实例代码
2013/11/19 Javascript
javascript获取xml节点的最大值(实现代码)
2013/12/11 Javascript
Window.Open如何在同一个标签页打开
2014/06/20 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
2017/09/28 Javascript
在vue中通过axios异步使用echarts的方法
2018/01/13 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
详解React中setState回调函数
2018/06/14 Javascript
vue.js使用watch监听路由变化的方法
2018/07/08 Javascript
详解使用VueJS开发项目中的兼容问题
2018/08/02 Javascript
利用Node.js批量抓取高清妹子图片实例教程
2018/08/02 Javascript
vue+axios+element ui 实现全局loading加载示例
2018/09/11 Javascript
解决VUE双向绑定失效的问题
2019/10/29 Javascript
微信小程序自定义支持图片的弹窗
2020/12/21 Javascript
Python抓取京东图书评论数据
2014/08/31 Python
Python列表解析配合if else的方法
2018/06/23 Python
Python人脸识别第三方库face_recognition接口说明文档
2019/05/03 Python
OpenCV+Python--RGB转HSI的实现
2019/11/27 Python
flask框架json数据的拿取和返回操作示例
2019/11/28 Python
pandas apply多线程实现代码
2020/08/17 Python
python实现双人五子棋(终端版)
2020/12/30 Python
通过css3动画和opacity透明度实现呼吸灯效果
2019/08/09 HTML / CSS
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
公司董事长职责
2013/12/12 职场文书
大学生社团活动总结
2014/04/26 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
订货会主持词
2015/07/01 职场文书
团队合作精神学习心得体会
2016/01/19 职场文书
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
2022/08/14 Servers