はじめまして。福岡と申します。
影舞の作者です。

# ちなみに、影舞は Ruby/eruby で書かれた BTS だったりします。

これまで、影舞を Windows 上で動かしたことはなかったのですが、
いい機会なので試してみました。

環境は、
  Windows 2000 Pro. + Ruby 1.6.7(cygwin版) + eruby 0.9.8 + 影舞 0.6.1 
です。Apache は、1.3.24 と 2.0.36 の両方を試しました。

"T.Fukagawa" san wrote:

| 1つめは、文字化けの問題で、影舞は C:/Apache/Apache2/htdocs/kagemai 配
| 下にインストールしたのでhttp://localhost/kagemai/kagemai.rhtml でアク
| セスできるのですが、IE に表示される漢字コードが必ず文字化けしてします。

これは、岩月さんのメール [ruby-list:35066] にあるように、main/kutil.rb
の require 'eruby' を削除してください。それでうまく動くと思います。
eruby がすでに動いているのに require 'eruby' する必要はないと思われる
ので、影舞のバグですね。


| 2つめは、Basic 認証の認識の問題で、
| C:/Apache/Apache2/htdocs/kagemai/private 配下は、Basic 認証後にアクセ
| スできるようになるのですが、kagemai.rhtml のコードで
| kcgi.authenticated? の部分が正しく評価されないようで、「管理」のメニュー
| が表示されません。Basic 認証のダイアログは表示されて、IE からはアクセ
| スコントロールができていると思われるのですが、kcgi.authenticated? が評
| 価されないのはどうしてでしょうか。

KCGI#authenticated? メソッドでは、環境変数 AUTH_TYPE が空かどうかで
認証済みかどうかをチェックしています。

おそらく .htaccess において

AddType application/x-httpd-eruby .rhtml
Action applicatoin/x-httpd-eruby /cgi-bin/eruby.exe

といった設定を行って eruby を起動されていると思いますが、Apache 2.0 
では、この設定で起動された場合、環境変数 AUTH_TYPE が正しく eruby に
渡されないみたいです。Apache の設定の問題なのかもしれませんが、
私にわかった回避策は以下の通りです。

(1) Apache 1.3.24 を使う

Apache 1.3.24 だと正しく AUTH_TYPE が設定されます。
後ろ向きではありますが、2.0 である必要がなければ、
1.3 を使うのはどうでしょうか?

(2) *.rhtml を CGI として起動する

$ cat .htaccess
Options ExecCGI
AddType application/x-httpd-cgi .rhtml

として、kagemai.rhtml の先頭に、

#!c:/cygwin/usr/local/bin/eruby.exe

などといれて、*.rhtml を CGI として起動してやると、
AUTH_TYPE が正しく設定されるようです。

(3) 認証を使用しない

個人的な利用で、WEB などで公開しない場合には、認証なしでも
プロジェクトの作成などの作業を行えます。
main/global.rb 中の RequireAdminAuth を false に設定して、
プロジェクト作成時に "ユーザ認証の必要性" のチェックボックス
のチェックをはずしてください。


実は Windows 上で Apache を動かすのは初めてで、Apache 2.0 を
さわったのも初めてなので、あまりよい回避策ではないかもしれま
せんが、ご参考になれば。

-- 
福岡ともゆき <fukuoka / daifukuya.com>
http://www.daifukuya.com/