- クライアント→リバースプロキシ(ゲートウェイ)間はHTTPS
- リバースプロキシ→Subversionサーバ間はHTTP
- svn cpの際に使われるHTTPのCOPYアクションで、Destinationリクエストヘッダに https:// スキームのフルパスが記述される
- SubversionサーバはHTTP設定なので https:// スキームを解釈しない(WebDAVサーバは、、というのが正しいかも)
ということのようです。 参考ブログ記事
リバースプロキシのApacheに mod_headers を追加インストールして RequestHeader ディレクティブを追加するだけ、、なんですがちょっとしたワナが。
リバースプロキシのApacheが古くて mod_headers に edit コマンドがないのです。ぐぬぬ。
新しいApacheをインストールし直せばいいんですが、PHP(これも古い)やらmod_pythonやらがつながっていて単純にApacheだけバージョンアップしてよいものか難しいところ…
⇒ そこで mod_headers だけ最新のものを使うようにしました。
apxsを使って現行Apacheのモジュールとしてビルドするので、新しいApache固有のAPIを使っていたりしたらビルド時にコケるはず。
というわけで
bunzip2 -c httpd-2.2.21.tar.bz2 | tar xf - cp httpd-2.2.21/modules/metadata/mod_headers.c . /usr/local/apache2/bin/apxs -i -c -a mod_headers.cみたいな感じで。
あとは各ブログの記事にならって httpd.conf(からincludeされる設定ファイル)に
RequestHeader edit Destination ^https http earlyと書けばOKでした。
(Destinationリクエストヘッダの書き換え。先頭の https を http にする)
0 件のコメント:
コメントを投稿