【问题标题】:Titanium Web Proxy : How to run it only for one specific domainTitanium Web 代理:如何仅针对一个特定域运行它
【发布时间】:2021-02-14 08:39:48
【问题描述】:

我试用了 Titanium C# Web Prox,我对此非常满意。 唯一的一点是要知道如何将 Web 代理配置为仅处理涉及特定域的 Web 流量,比如说 contoso.org。 事实上,这个自定义的网络代理只是为了管理到这个域的相关流量而创建的,并不需要处理来自其他域的网络请求。

我看到一个 ExplicitEndpoint 已配置并应用于 Windows Internet 选项上的 SystemHttpsProxy,但我没有找到任何选项将其仅应用于我的域 contoso.org

  1. 有没有办法通过 C# config on Titanium 库来配置此行为?
  2. 如果不能通过 C# 实现,也许是另一种方式?我试图在 Internet Options 上处理 PAC 文件,但它似乎不起作用,也许我做错了。或任何其他解决方案?

非常感谢。

【问题讨论】:

    标签: c# proxy pac titanium-web-proxy


    【解决方案1】:

    如果我理解你想要捕获特定域的流量。你可以试试这个:

    explicitEndPoint = new ExplicitProxyEndPoint(IPAddress.Any, 8000, true);
    explicitEndPoint.BeforeTunnelConnectRequest += ExplicitEndPoint_BeforeTunnelConnectRequest;
    proxyServer.AddEndPoint(explicitEndPoint);            
    
    private Task ExplicitEndPoint_BeforeTunnelConnectRequest(object sender, TunnelConnectSessionEventArgs e)
    {
         var hostName = e.HttpClient.Request.RequestUri.Host;
         if (!hostName.Contains("contoso.org"))
         {
            e.DecryptSsl = false;
         }
    
         return Task.CompletedTask;
    }
    

    【讨论】:

    • 就这么简单!! Thx 现在代理仅在 contoso.org 上侦听并忽略其他域请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多