Squid ICAP重写内容

时间:2013-04-11 15:37:09

标签: proxy reverse-proxy squid content-adaptation

我需要以下内容:

  1. http://mything.com/上的网络应用。
  2. http://mything.com/proxy/处的反向代理服务器
    1. 反向代理应该代理:例如http://mything.com/proxy/http://bbc.co.uk/
  3. 反向代理应重写源页面(htp://bbc.co.uk)中的所有链接,src,href等,以便从http://mything.com/proxy/$1重新绑定它们。
  4. 我们在Ruby中有90%的工作实现,开发为 Rack 应用程序,一系列8个中间件,可以完成各种工作:

    • 重写cookie域
    • 从我们的网站注入一个javascript块
    • 重写链接以适合代理。

    不可否认,我们的Ruby版本并不差,但它需要大约一秒钟来处理页面,这非常慢,并且根本不会混合。当我们将SSL引入混合时,它会变得更糟,并且管理层正在谈论剥离所有SSL,并且仅使用http。 (这自然是短视的,而且非常愚蠢。)

    这种问题必须通过Squid等工具和ICAP等协议草案得到更广泛的解决。

    我想摆脱我们自己种植的解决方案,因为它是持续疼痛的根源,而且缓慢

    我刚刚开始了解 Squid Content Adaptation函数,但未能找到一种合适的方法让它工作。

    我可以看到以下无法解决的问题:

    1. 如何从原始请求URI中提取URL组件? 即如何将.../proxy/(.*)作为后端地址使用?
    2. 如何在ICAP计划中重写cookie? 即ICAP内容改编计划是否收到完整的请求?
    3. 如何用ICAP重写网址,链接等? (Squirm看起来很有希望,但看起来事情必须硬编码(参见第1点)。 那么有没有更简单的使用regexes / etc的智能工具?
    4. 我知道这个问题有可能被标记“证明没有研究证据”,但是我已经达到了我能够确定的极限,而无需投入数天(或者看起来似乎)学习Squid的复杂性,当我唯一需要的是重写一些内容时!

0 个答案:

没有答案