FrontPage  Index  Search  Changes  Login

Hiki Issue Tracking System - Ticket-18 Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

! IISで「保存」ボタンを押すとエラーになる

:Priority:Normal
:Reporter:M.I
:Status:Closed
:Assigned to:かずひこ
:Version:0.8.2
:Milestone:0.8.3
:Created:2005-08-03

!! Description

IIS6.0/Windows Server2003で利用させていただいています。

Hiki0.8.0から0.8.2へバージョンアップしてみたところ、編集で「保存」すると、ブラウザでエラーが発生するようになってしまいました。

具体的には、以下のようになります。

IE:
 「セキュリティの警告」ダイアログが出た後、「サーバが見つかりません」画面になる

FireFox:
 「<サーバ名:80>への接続が途中で切断されてしまいました。データの一部だけが転送されている可能性があります」という警告ダイアログが出る

ただし、ページはちゃんと更新されています。また、ログインでも同様の現象が発生しました。

いろいろ調べてみたところ、どうやら@base_urlが適切に設定されていないらしい、ということがわかりました。(hikiconf.rbで明示的に指定すれば問題なくなります)

Config.base_urlの中に、

        elsif ENV['HTTPS']
          port = (ENV['SERVER_PORT'] == '443') ? '' : ':' + ENV['SERVER_PORT'].to_s
          @base_url = "https://#{ ENV['SERVER_NAME'] }#{ port }#{File::dirname(ENV['SCRIPT_NAME'])}/".sub(%r|/+$|, '/')
        else
          port = (ENV['SERVER_PORT'] == '80') ? '' : ':' + ENV['SERVER_PORT'].to_s
          @base_url = "http://#{ ENV['SERVER_NAME'] }#{ port }#{File::dirname(ENV['SCRIPT_NAME'])}/".sub(%r|/+$|, '/')
        end

とありますが、IISの場合、HTTPS変数は、「ON」または「OFF」のどちらかの値が必ず入っているようです。

http://www.microsoft.com/windows2000/ja/advanced/iis/default.asp?url=/windows2000/ja/advanced/iis/htm/asp/vbob5vsj.htm

したがって、常にhttpsとしてbase_urlを作成してしまっていたようです。

この部分は0.8.0でも同じなので、実は0.8.0でもそうだったと思われますが、base_urlに関係する機能を使っていなかったので気づかなかったようです。

*2005-08-03 (水) 14:40:31 かずひこ : OFF の際は http 扱いするように変更してコミットしました。
{{comment}}
----
{{its_edit_ticket_form}}