由于来自 Linux 环境,我会尝试尽可能准确地解释我显然不掌握的 Windows 概念。
以下是我目前的情况:
- 我有一个可运行的 Windows(10 pro x64)Nginx 设置
- 它在 https 上运行良好,使用计算机名称作为 FQDN(静态文件可通过https://计算机名称/文件名)
- 我的 Python Flask 应用程序运行良好,可以独立运行,也可以作为 WSGI 运行,这要归功于女服务员。
这是我的问题:
我不知道该怎么做-如果有可能的话-将我的 WSGI 应用程序绑定到 Nginx 的服务器配置。考虑到编写良好的Linux 的 Digital Ocean 教程,我的问题可能介于步骤 5 和步骤 6 之间。我是否应该采用相同的思维方式并构建 Windows 服务,然后通过链接将其链接起来.sock
,或者这显然不是正确的方法?
如果这是正确的方法,我不知道在哪里可以学到如何做到这一点以及实现这一目标的主要步骤是什么。例如,似乎 UNIX 套接字现在受 Windows 支持(但我不知道如何使用)或者我应该使用命名管道(但...我不知道如何使用!)。
希望我没有错过任何东西,谢谢你的帮助。
编辑:
灵感来自这个问题配置代理通行证有效。这是一个可靠的解决方案吗?
答案1
根据女服务员文件:
unix_socket Unix 套接字的路径(字符串)。如果指定了套接字路径,则会生成 Unix 域套接字,而不是通常的 inet 域套接字。
在 Windows 上不可用。
您可以在本地端口运行它,并使用 nginx 反向代理该端口,而不是从命名管道运行它。因此,您可以这样做,而不是按照 DigitalOcean 文章中的第 6 步进行操作:
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Port $server_port;
}
您还可以将该waitress serve
命令添加到 Windows 计划任务中,看这里。
希望这可以帮助。