[#30549] [ANN] Ruby 1.8.6 has been released — "Akinori MUSHA" <knu@...>

 Ruby 1.8.6 をリリースしました。

14 messages 2007/03/12

[#30553] help: lib/shell for ruby 1.9 — keiju@... (Keiju ISHITSUKA)

けいじゅ@いしつかです.

13 messages 2007/03/13
[#30585] Re: help: lib/shell for ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/03/15

まつもと ゆきひろです

[#30587] Re: help: lib/shell for ruby 1.9 — keiju@... (石塚圭樹) 2007/03/15

けいじゅ@いしつかです.

[#30588] Re: help: lib/shell for ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/03/15

まつもと ゆきひろです

[ruby-dev:30537] Microsoft-IIS 上で cgi.rb がレスポンス行を2重に出力する

From: MIYASAKA Masaru <alkaid@...>
Date: 2007-03-12 03:59:13 UTC
List: ruby-dev #30537
初めての投稿です。みやさか と申します。よろしくお願いいたします。

添付ライブラリの cgi.rb についてなのですが、これを Microsoft-IIS
上で使うと、HTTP のレスポンス行が2重に出力されてしまいます↓。

> HTTP/1.1 200 OK
> Server: Microsoft-IIS/5.1
> Date: Mon, 12 Mar 2007 03:37:41 GMT
> Connection: close
> Content-Type: text/html
> HTTP/1.1 200 OK
> Date: Mon, 12 Mar 2007 03:37:41 GMT
> Server: Microsoft-IIS/5.1
> Connection: close
> Vary: User-Agent
> Last-Modified: Wed, 28 Feb 2007 04:54:36 GMT
> Pragma: no-cache
> Cache-Control: no-cache

原因は、cgi.rb の 559行目で、SERVER_SOFTWARE が Microsoft-IIS の場合は
無条件にそのスクリプトが nph スクリプトであると判断しているためで、
cgi.rb が出力したレスポンス行と Web サーバが出力したレスポンス行の両方が
含まれてしまっていることなのですが、私が調べた限りでは、IIS/5.0
(Windows2000付属) 以降の IIS ではこういった特別扱いは全く必要ありません。

この ruby-dev の過去ログを見ると、その部分は Perl の CGI.pm を参考にして
書いたようなやりとりがあったのですが、現在のバージョンの CGI.pm を見ると
IISを特別扱いしている箇所は "This no longer seems to be necessary" という
コメントがつけられてコメントアウトされています。なので、cgi.rb でも
この部分はコメントアウトなどをすべきだと思います。

ブラウザなどでは HTTP のレスポンス行が2重に出力されても難なく表示される
ようですが、proxy の一部などはこのような HTTP ヘッダを拒否してしまう場合が
あるようです。


----------------------------
 宮坂 賢 (MIYASAKA Masaru)
 [email protected]

In This Thread

Prev Next