Index: [Article Count Order] [Thread]

Date: Sat, 08 Mar 2003 04:31:57 +0900
From: Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
Subject: [webrickja:74] httpproxy.rbで上位proxyの設定
To: webrickja@notwork.org
Message-Id: <20030308042236.B987.ZN@mbf.nifty.com>
X-Mail-Count: 00074

西山和広です。

CVS版のhttpproxy.rbにtypoがあったのでそれをなおして使って
いるのですが、以下のような感じでDHCPで割り当てられた
ネットワーク毎に上位のproxyを変更するというのは簡単に
対応できるのですが、URL毎にproxyを変えたいと思った場合に
同じ@configを使ってしまうので、同時アクセスがうまく
振り分けられないのではないかと思って困っています。

class DynamicChildProxyServer < WEBrick::HTTPProxyServer
  def proxy_service(req, res)
    dynamic_parent_proxy(req, res)
    super
  end

  def dynamic_parent_proxy(req, res)
    ipaddr = TCPSocket.getaddress(Socket.gethostname)
    case ipaddr
    when /^10\./
      @config[:ProxyHost] = 'proxy.local'
      @config[:ProxyPort] = 8080
    else
      @config[:ProxyHost] = nil
      @config[:ProxyPort] = nil
    end
  end
end

以下はtypoのパッチ。

--- httpproxy.rb~	2003-03-08 04:15:59.000000000 +0900
+++ httpproxy.rb	2003-03-06 11:13:59.000000000 +0900
@@ -104,7 +104,7 @@
       response = nil
       begin
         http = Net::HTTP.new(uri.host, uri.port,
-                             @config[:ProxyHost], @config[:ProxyHost])
+                             @config[:ProxyHost], @config[:ProxyPort])
         http.start{
           if @config[:ProxyTimeout]
             ##################################   these issues are 


-- 
|ZnZ(ゼット エヌ ゼット)
|西山和広(Kazuhiro NISHIYAMA)