5

由于 wfastcgi 模块与 Python 3.7 不兼容,在 Windows Server 上托管 python 烧瓶应用程序的最佳方式是什么?

4

1 回答 1

11

你需要在你的服务器上安装 python、wfastcgi 和烧瓶。

您可以从以下链接下载 python:

https://www.python.org/downloads/

安装python后下载wfastcgi:

pip install wfastcgi

以管理员身份运行命令提示符并运行此命令。

wfastcgi-enable

运行此命令以启用 wfastcgi。

下面是我的烧瓶示例:

应用程序.py:

from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
    return "Hello from FastCGI via IIS!"
if __name__ == "__main__":
app.run()

在此处输入图像描述

创建应用程序以运行它后,请使用以下命令:

python app.py

现在启用 iis 的 cgi 功能:

在此处输入图像描述

  • 现在打开iis。
  • 右键单击服务器名称并选择添加站点。
  • 输入站点名称物理路径和站点绑定。
  • 添加站点后,选择站点名称并从中间窗格中选择处理程序映射功能。
  • 点击“添加模块映射” 在此处输入图像描述
  • 添加以下值:

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

可执行路径值:

C:\Python37-32\python.exe|C:\Python37-32\Lib\site-packages\wfastcgi.py

  • 单击“请求限制”。确保“仅当请求映射到时才调用处理程序:”复选框未选中:

在此处输入图像描述

  • 在此处单击“是”:

在此处输入图像描述

  • 现在返回并再次选择服务器名称并从中间窗格中选择快速 CGI 设置。

在此处输入图像描述

  • 双击它,然后单击 Environment Variables 集合的“...”以启动 EnvironmentVariables Collection Editor:

在此处输入图像描述

  • 设置 PYTHONPATH 变量:

在此处输入图像描述

  • 还有 WSGI_HANDLER(我的 Flask 应用程序名为 app.py,因此值为 app.app - 如果您的应用程序名为 site.py,则为 site.app 或类似名称):

在此处输入图像描述

  • 单击确定并浏览到您的站点:

在此处输入图像描述

注意:不要忘记将 iusr 和 iis_iusrs 用户权限分配给烧瓶站点文件夹和 python 文件夹。

于 2019-10-07T06:29:07.867 回答