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中的变量和赋值运算符
Oct 12 Python
python Django框架实现自定义表单提交
Mar 25 Python
python+numpy+matplotalib实现梯度下降法
Aug 31 Python
对pandas中时间窗函数rolling的使用详解
Nov 28 Python
Python实现Linux监控的方法
May 16 Python
关于django 1.10 CSRF验证失败的解决方法
Aug 31 Python
详解Python可视化神器Yellowbrick使用
Nov 11 Python
详解Python中的分支和循环结构
Feb 11 Python
python 基于opencv操作摄像头
Dec 24 Python
python实现简单反弹球游戏
Apr 12 Python
TensorFlow中tf.batch_matmul()的用法
Jun 02 Python
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
Jun 08 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
从网上搜到的phpwind 0day的代码
2006/12/07 PHP
php中cookie的作用域
2008/03/27 PHP
php打包网站并在线压缩为zip
2016/02/13 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
thinkPHP简单实现多个子查询语句的方法
2016/12/05 PHP
php实现查询功能(数据访问)
2017/05/23 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
ExtJS的拖拽效果示例
2013/12/09 Javascript
JQuery实现鼠标移动到图片上显示边框效果
2014/01/09 Javascript
PHP和NodeJs开发的应用如何共用Session
2015/04/16 NodeJs
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
web打印小结
2017/01/11 Javascript
ES6中Symbol类型用法实例详解
2017/04/06 Javascript
bootstrap datetimepicker控件位置异常的解决方法
2017/11/23 Javascript
详解Angular路由之路由守卫
2018/05/10 Javascript
vue.js 打包时出现空白页和路径错误问题及解决方法
2019/06/26 Javascript
Vue使用富文本编辑器Vue-Quill-Editor(含图片自定义上传服务、清除复制粘贴样式等)
2020/05/15 Javascript
vue实现防抖的实例代码
2021/01/11 Vue.js
[00:59]DOTA2英雄背景故事——上古巨神
2020/06/28 DOTA
Python自动重试HTTP连接装饰器
2015/04/28 Python
使用Python的web.py框架实现类似Django的ORM查询的教程
2015/05/02 Python
在Python中用get()方法获取字典键值的教程
2015/05/21 Python
python简单判断序列是否为空的方法
2015/06/30 Python
基于pycharm导入模块显示不存在的解决方法
2018/10/13 Python
对python中GUI,Label和Button的实例详解
2019/06/27 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
2019/08/20 Python
Python更新所有已安装包的操作
2020/02/13 Python
pyqt5数据库使用详细教程(打包解决方案)
2020/03/25 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
Python获取指定网段正在使用的IP
2020/12/14 Python
CSS3教程(6):创建网站多列
2009/04/02 HTML / CSS
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
教师申诉制度
2014/01/29 职场文书
出售房屋委托书范本
2014/09/24 职场文书
家属联谊会致辞
2015/07/31 职场文书
MySQL提升大量数据查询效率的优化神器
2022/07/07 MySQL