windows IIS部署python Flask网站

涉及工具和平台

  • Windows 10 x64

  • Python 3.5+

  • Flask

1、安装 IIS,启用 CGI

iis一般都会安装,这里讲一下cgi的安装,一般在iis安装中都会默认安装cgi,如果没有装的话可以到控制面板\所有控制面板项\程序和功能下的启用或关闭windows功能中去找到并打开。

2、python安装wfastcgi并激活

我这里用的python集成环境anaconda,打开的命令行是Anaconda Prompt。

pip install wfastcgi

进入python安装目录下的scripts文件夹然后运行wfastcgi-enable

运行成功后会提示一下文字:"c:\program files\anaconda3\python.exe"|"c:\program files\anaconda3\lib\site-packages\wfastcgi.py"这段文字非常重要,后续在配置程序映射的时候会用到。

3、配置webconfig文件

在Flask程序的同级目录下新建web.config文件,文件内容如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
           <add name="FlaskFastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="c:\program files\anaconda3\python.exe|&quot;c:\program files\anaconda3\lib\site-packages\wfastcgi.py&quot;" resourceType="Unspecified" requireAccess="Script" />
        </handlers>
		<security> 
			<requestFiltering allowDoubleEscaping="true"></requestFiltering> 
		</security> 
    </system.webServer>
	<appSettings>
		<!-- Required settings -->
		<add key="WSGI_HANDLER" value="Flasktest.app" />
		<add key="PYTHONPATH" value="~/" />
	</appSettings>
</configuration>

先按照以上内容保存,后续在配置程序映射时再做修改。

4、iis中新建网站

按需求填写网站名称,物理路径,端口号。

5、配置网站程序映射

打开网站下方的处理程序映射模块,添加模块映射

请求路径填写*,模块选择FastCgiModule,可执行文件将之前安装激活wfastcgi成功后返回的语句拷入"c:\program files\anaconda3\python.exe"|"c:\program files\anaconda3\lib\site-packages\wfastcgi.py",填写模块名称(自定义),点击请求限制,将仅当请求映射至一下内容是才调用处理程序的√去掉。

6、修改webconfig配置文件

由于上一步添加了fastcgi模块,在配置文件下的handlers节点下方会多出一条add,将原来的add去除即可。

修改appSettings节点下add key为WSGI_HANDLER的value,将他改成运行的python主程序的名字,后缀为app即可。

 

以上就是配置的基本流程,可能会在运行中提到权限的问题,可以手动将文件夹的权限改成everyone最大权限即可。

  • 6
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
要在win10的IIS部署PythonFlask,需要以下步骤: 1. 安装Python和pip 在Windows上安装Python和pip非常简单,可以从官方网站下载并安装。安装完成后,需要将Python和pip添加到系统环境变量中,以便在命令行中使用。 2. 安装Flask 使用pip安装Flask,可以在命令行中执行以下命令: ``` pip install flask ``` 3. 配置IISIIS中创建一个新的网站,并设置应用程序池为“无托管代码”。这是因为Flask需要在应用程序池中运行Python解释器,而无托管代码池是唯一支持此功能的池类型。 4. 配置FastCGI 要在IIS中运行Python应用程序,需要使用FastCGI模块。在服务器上安装FastCGI模块后,需要创建一个FastCGI应用程序映射,以便IIS可以将请求传递给Python解释器。 5. 配置web.config 在网站的根目录中创建一个名为“web.config”的文件,并添加以下内容: ```xml <configuration> <system.webServer> <handlers> <add name="Python FastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="C:\PythonXX\python.exe|C:\PythonXX\Lib\site-packages\wfastcgi.py" resourceType="Unspecified" requireAccess="Script" /> </handlers> <fastCgi> <application fullPath="C:\inetpub\wwwroot\YourApp\yourapp.wsgi"> <environmentVariables> <environmentVariable name="PYTHONPATH" value="C:\inetpub\wwwroot\YourApp" /> <environmentVariable name="FLASK_APP" value="yourapp" /> <environmentVariable name="FLASK_ENV" value="production" /> </environmentVariables> </application> </fastCgi> </system.webServer> </configuration> ``` 其中,“scriptProcessor”需要替换为你的Python解释器路径,“fullPath”需要替换为你的应用程序路径,“environmentVariables”需要配置为你的应用程序所需的环境变量。 以上就是在win10的IIS部署PythonFlask的基本步骤,你可以根据具体情况进行相应的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值