From: "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>
Date: 2013-01-05T19:33:48+09:00
Subject: [ruby-dev:46837] [ruby-trunk - Bug #7650] net/http always added port number in host header.


Issue #7650 has been updated by hsbt (Hiroshi SHIBATA).


tDiary の issue にも記載していますが、nahi さんの httpclient でもデフォルトのポート番号は付けないように回避しているようです。

https://github.com/nahi/httpclient/blob/master/lib/httpclient/http.rb#L395
----------------------------------------
Bug #7650: net/http always added port number in host header.
https://bugs.ruby-lang.org/issues/7650#change-35218

Author: hsbt (Hiroshi SHIBATA)
Status: Assigned
Priority: Urgent
Assignee: naruse (Yui NARUSE)
Category: core
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2013-01-02 trunk 38676) [x86_64-darwin12.2.1]


#6482 の変更から、URI インスタンスを Net::HTTP のリクエストに渡した時に host ヘッダにホスト名とポート番号がつくようになりましたが、いくつかのサービスはポート番号付きのリクエストは動かないようです。(例: amazon の ecs api)

w3c に従うと、ポート番号を付けても動くべきと思いますが、今現在 amazon のような大きなサービスでも動かない状況なので、添付しているパッチのように 2.0 ではポート番号は付けないようして頂けないでしょうか。

参考URL:
 * http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.23
 * https://github.com/tdiary/tdiary-core/issues/225



-- 
http://bugs.ruby-lang.org/