Redmine を Windows Server 2008 R2 に入れてみた。

十数時間も悪戦苦闘したのですが、最終的には10分程度で解決しました。

成り行き

IISと連携してRedmineを動かしたい!
なので、とりあえず、Ruby、gem、RailsMySQLなどなどインストール。
設定もした!WEBrick上でも動いた!
ARRも入れて、URI書き換えもやった!


なのに!


実際に http://example.com/redmine/ にアクセスすると、
何故か最初の200バイトぐらいしかロードしてくれず、HTMLがヘッダの途中で切れてました。
何度やっても、3000番に直接アクセスしても、ダメ。
まったく原因が分からず、Rubyのバージョンを変えたり、Railsのバージョンを変えたり、
全部入れなおしてみたり、いろいろやったのですが、ダメでした。
原因も分からずじまい。

結果

これを入れたら正常に動くようになりました。
(ARRを用いてURI書き換えを行うのは変わりません。)
既にMySQLなどは動いてるので、その辺のポートは若干変えてインストールしました。
十数時間も苦戦した割に、これ1つ入れただけでアッサリと動いてしまったので、拍子抜けです。。。
All-In-Oneパッケージの威力、ぱない。

メールの送信ができない

ここまできて、メールの送信が何故かうまくできず。
MyDNSさんのSMTPサーバを使わせてもらおうとしてたのですが、ダメでした。
(今考えてみれば、IPを更新し忘れてた、とか、そういうオチなのかもしれません。。)
そこで、GoogleSMTPサーバを使わせてもらうことにしました。
email.ymlはこんな感じに。

production:
  delivery_method: :smtp
  smtp_settings:
    tls: true
    address: "smtp.gmail.com"
    port: 587
    domain: "smtp.gmail.com"
    authentication: :plain
    user_name: "自分のGmailアカウント(アドレス)"
    password: "自分のGmailアカウント(パスワード)"

ただし、Ruby 1.8系ではTLSによるメール送信に対応していないので、
action_mailer_optional_tls_plugin というやつをインストールする必要があります。
これがまた少し面倒で、次のコマンドでインストールできるはずが、何故かできませんでした。

cd "C:\program files\BitNami Redmine Stack\apps\redmine"
ruby script/plugin install git://github.com/collectiveidea/action_mailer_optional_tls.git

仕方ないので、GitHub - collectiveidea/action_mailer_optional_tls: Enables TLS on SMTP connections (for services like GMail)にアクセスして、
ファイルを1つ1つ、\vendor\plugins\action_mailer_optional_tls\ 内にダウンロードしました。
(libやtestなどのディレクトリは手動で作成。)
その結果、見事にメールが送信できるようになりました。めでたしめでたし。