gpt4 book ai didi

python通过cgi反向代理生成

转载 作者:行者123 更新时间:2023-12-01 06:09:48 24 4
gpt4 key购买 nike

我需要编写一个 cgi 页面,它将充当用户和另一个页面(mbean)之间的反向代理。问题是每个 mbean 使用不同的端口,我不提前知道用户想要访问哪个端口。
因此我需要做的事情如下:A)为用户提供一个页面,允许他选择他想要访问的应用程序B)根据上面的信息生成一个反向代理(这给了我端口、服务器等......)C) 用户通过反向代理连接到远程 mbean 页面,因此永远不会“离开”原始页面。
选择 C ​​的原因是用户无法直接访问任何内部应用程序,只能访问初始端口 80。

我查看了twisted,在我看来它可以完成这项工作。我不知道的是如何从 cgi 中生成扭曲的进程,以便它可以建立连接并在反向代理框架内保持进一步的连接。

顺便说一句,我还没有嫁给twisted,如果有其他工具可以更好地完成这项工作,我洗耳恭听。我不能做 mod_proxy 之类的事情(例如),因为广泛的端口会使配置变得相当愚蠢(大约 1000 个不同的代理设置)。

最佳答案

您不需要生成另一个进程,这会使事情变得更加复杂。根据我当前项目中的类似内容,我将如何做到这一点:

  • 创建一个 WSGI 应用程序,该应用程序可以驻留在网络服务器后面。
  • 创建一个请求处理程序(或“ View ”),只要用户没有 session ID Cookie,就可以从任何 URL 映射访问该请求处理程序。
  • 在请求处理程序中,用户可以选择目标应用程序及其主机名、端口号等。此请求处理程序创建与目标应用程序的连接,例如使用 httplib 并为其分配 session ID。它设置 session ID cookie 并将用户重定向回同一页面。
  • 现在,当您的用户点击应用程序时,您可以使用已打开的 http 连接来重定向查询。请注意,WSGI 支持传回打开的类似文件的对象作为响应,包括 httplib 提供的对象,以提高性能。

关于python通过cgi反向代理生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6488806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com