IIS部署python Web(FLASK试例)

IIS部署python Web(FLASK试例)

开发环境:python3.6 、win7、pycharm2017


1、安装及配置IIS

  • 控制面板中>-程序和功能>-打开或关闭WINDOWS功能
  • 配置Internet信息服务
  • 配置万维网服务

2、安装URL重写组件

下载安装Web平台安装程序 5.0 (WEB PLATFORM INSTALLER 5.0)

  • 安装URL Rewrite 2.0


3、安装wfastcgi

 pip install wfastcgi


4、启用wfastcgi


安装好的wfastcgi在D:\anaconda\Lib\site-packages路径下,在此路径中以管理员身份运行

wfastcgi-enable

正常应返回:

Applied configuration changes to section "system.webServer/fastCgi" for "MACHINE/WEBROOT/APPHOST" at configuration commit path "MACHINE/WEBROOT/APPHOST"
"D:\anaconda\python.exe|D:\anaconda\lib\site-packages\wfastcgi.py" can now be used as a FastCGI script processor

【报错处理】

1、若提示wfastcgi-enable权限不足,则使用管理员身份运行cmd 切换到对应文件夹执行wfastcgi-enable即可

2、若提示application对象确实必要属性或重复,则执行 wfastcgi-disable命令

5、创建FLASK并配置IIS 权限

将wfastcgi.py复制到WEB_FLASK文件夹中

在WEB_FLASK 文件夹中以管理员执行以下两条命令,使IIS用户拥有访问和执行你的网站脚本的权限

icacls . /grant "NT AUTHORITY\IUSR:(OI)(CI)(RX)"
icacls . /grant "Builtin\IIS_IUSRS:(OI)(CI)(RX)"

6、在IIS管理器中创建网站并添加映射

  • 进入网站控制台内的“处理程序映射”(不要在IIS控制台直接进入,不然创建的FastCGI会对所有网站生效)
  • 添加模块映射
  • 返回IIS控制台,进入“FastCGI”设置,
  • 添加环境变量

WSGI_HANDLER 对应Flask实例的位置,这里就是WEB_FLASK文件内的APP

PYTHONPATH为网站根目录

  • 配置完成后重启IIS

浏览器测试:

编辑于 2018-05-07