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的三目运算符和not in运算符使用示例
Mar 03 Python
10种检测Python程序运行时间、CPU和内存占用的方法
Apr 01 Python
利用Celery实现Django博客PV统计功能详解
May 08 Python
Python3 处理JSON的实例详解
Oct 29 Python
基于python内置函数与匿名函数详解
Jan 09 Python
Python实现带参数与不带参数的多重继承示例
Jan 30 Python
python3连接MySQL数据库实例详解
May 24 Python
Python 删除连续出现的指定字符的实例
Jun 29 Python
Python关于反射的实例代码分享
Feb 20 Python
python 按钮点击关闭窗口的实现
Mar 04 Python
python爬虫beautifulsoup解析html方法
Dec 07 Python
python使用shell脚本创建kafka连接器
Apr 29 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 获取mysql数据库信息代码
2009/03/12 PHP
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
2011/11/07 PHP
PHP生成唯一订单号
2015/07/05 PHP
PHP实现简单ajax Loading加载功能示例
2016/12/28 PHP
一段批量给页面上的控件赋值js
2010/06/19 Javascript
基于jquery实现无限级树形菜单
2016/03/22 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
使用vue制作FullPage页面滚动效果
2017/08/21 Javascript
Koa2 之文件上传下载的示例代码
2018/03/29 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
微信小程序实现留言板
2018/10/31 Javascript
vue实现随机验证码功能的实例代码
2019/04/30 Javascript
微信小程序template模板与component组件的区别和使用详解
2019/05/22 Javascript
angularjs请求数据的方法示例
2019/08/06 Javascript
layui 选择列表,打勾,点击确定返回数据的例子
2019/09/02 Javascript
vue获取data数据改变前后的值方法
2019/11/07 Javascript
js DOM的事件常见操作实例详解
2019/12/16 Javascript
[03:55]显微镜下的DOTA2特别篇——430灰烬之灵神级操作
2014/06/24 DOTA
Python可变参数函数用法实例
2015/07/07 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
python使用socket创建tcp服务器和客户端
2018/04/12 Python
python pandas模块基础学习详解
2019/07/03 Python
python搜索包的路径的实现方法
2019/07/19 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
python如何提升爬虫效率
2020/09/27 Python
Mountain Hardwear官网:攀岩服装和户外装备
2019/09/26 全球购物
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
2016/05/09 面试题
Linux面试经常问的文件系统操作命令
2015/11/05 面试题
毕业生大学生活自我总结
2014/01/31 职场文书
现场施工员岗位职责
2014/03/10 职场文书
煤矿安全承诺书
2014/05/22 职场文书
大学教师个人总结
2015/02/10 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
Django框架中模型的用法
2022/06/10 Python