【已解决】win10/8下iis本地部署flask网站
简介
哈哈,老师给的小任务,让研究一下如何部署flask框架写的网站
主要是用wfastcgi功能~
已经成功了,这里和大家分享一下经验~
环境及工具
- win10
- python3.6
参考
非常非常非常感谢这篇~~
将基于Flask框架的Web应用部署到IIS上
强烈建议大家看看,全程跟着做即可。
原理
参考本篇教程里的:
通过配置桥接,将IIS的请求利用wfastcgi功能,启动flask框架开发的程序来做响应。其中,关键一点就是IIS中配置的网站需要一个fastcgi的配置,指定python.exe作为cgi程序,指定wfastcgi.py作为脚本执行。
步骤
基本是每一步都按照这里的教程来的~!
接下来写几个注意的点把!
1.python安装
特别要注意的就是python安装的时候!
经过反复测试,如果windows上安全Python3,一定要安装自定义目录,且勾选all users选项。
多亏了作者的这句话,没有踩坑!
2.安装.whl文件
这里可能有点疑惑,我是参考了这篇然后装的:
关于给python安装.whl文件的一些问题
感谢~
3.WSGI_HANDLER参数说明
先放自己正确的web.config代码:
<?xml version="1.0" encoding="UTF-8"?>
<configuration><system.webServer><handlers><add name="Web_release_test" path="*" verb="*" modules="FastCgiModule" scriptProcessor="c:\pythons\python3.6\python.exe|c:\pythons\python3.6\lib\site-packages\wfastcgi.py" resourceType="Unspecified" requireAccess="Script" /></handlers></system.webServer><!-- appSettings节点需要手工添加 --><appSettings><!-- 2个必须要有的参数:@WSGI_HANDLER:fastCGI获得请求后调用的flask应用入口。@PYTHONPATH: 执行整个应用的项目目录--><add key="WSGI_HANDLER" value="hello_world.create_app()" /><add key="PYTHONPATH" value="D:\CurrentProjects\PythonFolders\python_work\Web_release_test" /><!-- 可选参数, 我这里就配置一个日志文件,其他应该参考 https://pypi.org/project/wfastcgi/ --><!--add key="WSGI_LOG" value="C:\CurrentProjects\PythonFolders\python_work\Web_release_test.log" / --></appSettings>
</configuration>
备注:部分代码来自上面提到的第一篇教程
这里我刚开始,因为我一开始的时候没有写函数什么的,直接就是一个app的单文件,按照作者说的,value = __name__.app
,然后报错如下:
大概就是说没有这个模块。
之后看到教程里这句
我这里使用了模块的方式,在__init__.py中有一个函数来创建app。因此配置的值就是:flaskr.create_app(),不需要任何的管理或启动py文件,即可使用。用模块方式,其实更方便。
融会贯通(?)改了一下自己的代码:
def create_app(test_config=None):app = Flask(__name__)@app.route('/', methods=['GET'])def index():return "你和哥一样棒!"#if __name__ == '__main__':#app.run(debug=True)return app
之后web.config里改成value="hello_world.create_app()"
就可以了!
可能遇到的错误
我弄的时候还遇到了这个报错:
然后猜是这个映射模块的问题,仔细检查之后不知道为啥路径变了,少了几个字母。改正过后就ok啦!!
大家也可以检查一下这里的路径~
运行成功页面
没有占大家便宜的意思,哈哈哈,我有个可爱的哥而已~
祝大家都运行成功!!!
PS.我的方法可能还是复杂了点,win下iis部署flask还是有点麻烦,不知道有没有大神有更好的办法呀,欢迎分享哦~~
【已解决】win10/8下iis本地部署flask网站相关推荐
- Win10 IIS本地部署MVC网站时不能运行?
异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 部署后出现这个错误: 打开文件目录后发现是可以看见目录的,静态页面也是可以打开的 ...
- 斯沃服务器没有正确安装,[已解决]win10系统windows installer没有正确安装
[已解决]win10系统windows installer没有正确安装 在使用win10系统的过程中有的网友碰到了总是跳出"windows Installer准备安装"提示框的故障 ...
- 解决win10 cmd下运行python弹出windows应用商店问题
解决win10 cmd下运行python弹出windows应用商店问题 问题描述: win10系统下,环境变量已配置,然而在cmd下或powershell下运行python,均弹出应用商店,不能正 ...
- 解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机
解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机 解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机 问题描述 第一步:启用规则 第二步:修改高级共享设置 第三步 ...
- IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决方法
IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决方法 IIS上部署MVC网站,打开后500错误:处理程序"Extensionle ...
- 点计算机没有本地磁盘,快速解决WinPE系统下没有本地磁盘的方法
最近,有不少朋友表示,进入WinPE系统后打开我的电脑,找不到本地磁盘,怎么办?PE系统下识别不了硬盘还是被隐藏了?今天U大侠小编跟大家一起讨论WinPE系统里面找不到硬盘的解决方案! WinPE系统 ...
- win10系统到苹果数据连接到服务器失败,教你如何解决win10系统下iphone连不上电脑的问题...
在操作iphone手机的过程中,常常需要通过连接win10系统电脑的来进行一些数据传输操作,这也是现阶段比较常见的操作方法,然而有些用户在使用win10系统连接iphone手机的时候总是连接不上,那么 ...
- 已解决Win10家庭版找不到组策略gpedit.msc
已解决Win10家庭版找不到组策略gpedit.msc 本文目录 一.Bug描述 二.定位报错点及原因 三.解决方案 1.建立一个txt文档 四.注意事项. 总结:写在后面的话 一.Bug描述 今天在 ...
- IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0 实际解决方案
IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决办法 IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Int ...
最新文章
- 微软称使用 Edge 而非 Chrome 能提升电池续航
- 无刷新上传图片,ajax 和 iframe
- Google 翻译的妙用
- laravel 5.5 的相关字符串辅助函数
- linux -- chcp
- 有备无患的Linux操作系统备份方法
- Bitcoin0.21版 公链开发(5) PHP集成到Apache中(windows平台)
- linux如何配置vnc服务器,Linux下VNCServer配置详解
- linux运维、架构之路-jumpserver
- python常用正则表达式_Python3常用正则表达式
- FA_手工明细增加固定资产(流程)
- Java 集合 之 Set
- 30个Oracle语句优化规则详解(1)
- Sci-Hub又又又被起诉了!这个论文免费下载网站也太难了...
- 【数据结构 严蔚敏版】 链式栈基本操作
- Dfinity(ICP)介绍-1
- pascal指针 c语言指针,pascal指针 - Pascal教程
- python的scrapy爬虫模块间进行传参_python网络爬虫——scrapy核心组件介绍、请求传参、下载中间件...
- PDF字数统计后出现2个数字分别是什么
- 投资案例分析:投资创业公司时,VC 关注什么?