Python 可编程透明转发代理
我正在寻找一种编写透明转发代理脚本的方法,例如用户在代理设置中将浏览器指向的代理 我发现在前向代理中,在可编写脚本性和健壮性之间有一个明显的折衷。例如,它们是在中开发的无数代理,允许您检查每个请求响应并随意记录、修改、筛选。。。然而,它们要么无法代理所需的一切,要么在使用20分钟后崩溃 另一方面,我怀疑Squid和Apache相当健壮和稳定,但就我的一生而言,我无法确定如何通过脚本开发动态行为。最后,我想设置配额,并对该配额进行动态筛选。我的一部分感觉像是混合和修改perl??可以允许有趣的动态代理,但很难知道从哪里开始,也很难知道是否可能Python 可编程透明转发代理,python,ruby,perl,apache,proxy,Python,Ruby,Perl,Apache,Proxy,我正在寻找一种编写透明转发代理脚本的方法,例如用户在代理设置中将浏览器指向的代理 我发现在前向代理中,在可编写脚本性和健壮性之间有一个明显的折衷。例如,它们是在中开发的无数代理,允许您检查每个请求响应并随意记录、修改、筛选。。。然而,它们要么无法代理所需的一切,要么在使用20分钟后崩溃 另一方面,我怀疑Squid和Apache相当健壮和稳定,但就我的一生而言,我无法确定如何通过脚本开发动态行为。最后,我想设置配额,并对该配额进行动态筛选。我的一部分感觉像是混合和修改perl??可以允许有趣的动态
请告知。如果您正在寻找Perl解决方案,请查看
但不确定是否有任何mod_perl解决方案。确实会让人想起谷歌,也会让人想起谷歌。但是请注意,这两个都有点旧,所以YMMV,但您可能会发现它们是一个有用的补充。我一直在用python编写HTTP库,专门将代理服务器作为用例编写。目前它还不是很成熟(当然需要更多的测试和单元测试),但它已经足够完整,我觉得它很有用。我不知道它是否能满足你的任何需求 该库称为httpmessage,谷歌代码站点就是这样找到的。有一个在服务器上编写代理服务器的示例
我很高兴收到反馈和/或bug修复。
mod_proxy
,但我使用过mod_rewrite
。mod_rewrite还允许您代理请求。该指令允许您将决策传递给外部脚本:
MapType:prg,MapSource:Unix文件系统到有效常规文件的路径
这里的源代码是一个程序,而不是一个映射文件。要创建它,您可以使用自己选择的语言,但结果必须是一个可执行程序(目标代码或第一行是带有神奇的cookie技巧“#!/path/To/explorer”的脚本)
该程序在Apache服务器启动时启动一次,然后通过其stdin和stdout文件句柄与重写引擎通信。对于每个map函数查找,它将在stdin上接收以换行符结尾的字符串形式进行查找的键。然后,它必须在stdout上以换行符结尾的字符串形式返回查找到的值,如果失败,则返回四个字符的字符串“NULL”(即给定键没有对应的值)
使用Squid,您可以通过指令获得类似的功能:
此标记定义使用帮助程序的外部acl类应如何查找状态
祝你好运 我会使用,它可以执行其他程序来动态更改请求。我使用squid和external_acl_类型,工作起来很有魅力。谢谢。我几乎可以肯定,如果我今天还需要这样做,我会在node.js中编写它