python - 我无法连接到 https 女服务员 wsgi 服务器

标签 python https pyramid wsgi waitress

python Pyramid 框架的教程我都试过了,但是,https连接,怎么能女服务员。 http://docs.pylonsproject.org/projects/pyramid/en/latest/tutorials/wiki2/installation.html

如果你查看 waitress 的文档,有一个名为“url_scheme”的项,采用 pasteDeploy 格式。我尝试将以下内容添加到 development.ini 中:

# # #
# Wsgi server configuration
# # #

[server: main]
use = egg:waitress#main
host = 0.0.0.0
port = 6543
url_scheme = https

但是,它似乎正在监听执行 pserve 命令的 http 连接。

$ serve development.ini - reload
Starting subprocess with file monitor
Starting server in PID 2757.
serving on http://0.0.0.0:6543

此状态下浏览器访问无响应。 我尝试创建的应用程序需要 https 访问权限,但您认为其他东西需要一个包吗?还是我从根本上错了?我将不胜感激专家的建议。

环境在fedora19,python 3.3.2。 virtualenv 中包含以下软件包:

Chameleon == 2.12
Mako == 0.9.0
MarkupSafe == 0.18
PasteDeploy == 1.5.0
Pygments == 1.6
SQLAlchemy == 0.8.2
WebOb == 1.2.3
coverage == 3.7
nose == 1.3.0
pyramid == 1.4.5
pyramid-debugtoolbar == 1.0.8
pyramid-mako == 0.2
pyramid-tm == 0.7
repoze.lru == 0.6
transaction == 1.4.1
translationstring == 1.1
tutorial == 0.0
venusian == 1.0a8
waitress == 0.8.7
zope.deprecation == 4.0.2
zope.interface == 4.0.5
zope.sqlalchemy == 0.7.3

请告诉我们文件的位置会对我有所帮助。 非常感谢!

最佳答案

Waitress 实际上不支持解码 https 请求。支持 https 的唯一方法是将女服务员置于反向代理(如 nginx)之后。然后,您允许 nginx 解密请求并将其传递给女服务员。这里的问题是女服务员现在认为它正在处理一个 http 请求,因为那是它从 nginx 看到的。 url_scheme 设置用于告诉女服务员所有进入女服务员的请求实际上都是 https,然后它可以将其转发给应用程序,该应用程序使用该事实来帮助您的应用程序使用 https 方案而不是生成 url http.

希望这是有道理的,但无论哪种方式,您都应该清楚,当您的粘贴中没有任何地方实际创建证书或私钥时,您的 https 设置将无法正常工作。

关于python - 我无法连接到 https 女服务员 wsgi 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19462959/

相关文章:

python - 使用 Python 自动化 AutoCAD

Android:无法使用委托(delegate)证书建立 HTTPS 连接

ios - NSURLSession - 忽略 SSL 证书警告

reactjs - Heroku 重定向 Next.js React 客户端应用程序 http 到 https

python - 将 Pyramid 遍历中的 View 前缀从 "@@"更改为 "+"

mysql - sqlalchemy FetchedValue 和 primary_key

python - 运行时错误 : Matching Python module for ImageSensor not found

python - 切换祖先顺序会破坏初始化吗?

python - 搜索加载了 JS 的项目时,Scrapy 飞溅无法正常工作

Python:属性错误:_dep_map