dom*_*_pl 6 python security httpserver python-3.x
我想设置非常简单的 http 服务器,它替换单个 html 文件中的几个关键字,并将其发送到响应中以请求客户端。Python 的http.server对我来说看起来不错,但在文档中我发现:
警告 http.server 不推荐用于生产。它只实现基本的安全检查。
并在源代码中:
安全警告:除非您在防火墙内,否则不要使用此代码——它可能会执行任意 Python 代码或外部程序。
你知道有什么方法可以创建安全的 http 服务器,哪些端口可以通过防火墙连接到互联网?
如果它是 Python Web 应用程序,则 Python 中的 HTTP 服务器有多个可用选项。其中安全的有 Gunicorn、Nginx WSGI、mod_wsgi。此处提供了一个列表。我将以 mod_wsgi 为例。官方文档指出有两种安装此软件包的方法,并且两种方法对于生产部署都是安全的:
根据您的要求,可以通过两种不同的方式安装该软件包。第一种是作为传统 Apache 模块安装到现有 Apache 安装中。安装 mod_wsgi 的第二种方法是使用 Python pip 命令从 PyPi 安装它。这会构建 mod_wsgi 并将其安装到您的 Python 安装或虚拟环境中。两种安装类型都适合生产部署。
根据文档,最好的选择是使用:Apache + mod_wsgi + docker。
对于 mod_wsgi,您需要配置 Apache 2.4 并且支持 Python 2 和 3。此处说明了要求。
Apache Web 服务器广泛用于生产应用程序。Apache HTTP 服务器项目是最古老且维护良好的项目之一,已有 20 年历史。你可以在这里读更多关于它的内容。至于实施安全性,您应该阅读这个答案。
| 归档时间: |
|
| 查看次数: |
6259 次 |
| 最近记录: |