12月 21
mod_proxy+mod_encodingでのURIエンコーディング問題
keitaircのエントリではかなりはしょって書いてるけど、設定段階でかなり問題になったのがありまして。
mod_proxyを通したら何故かURIエンコードされたチャンネル名の先のURIを叩いても何も出てこないのですよ。例えばrecentみたいなエンコードされてないところは普通に見える。ProxyPass通さないで直接叩くと見える。なんでだ…
まずはURIエンコードする部分を疑ってエンコードされてる文字列をみるも、間違った様子はない。Jcode.pmがへくってるのかとおもい、入出力のコードを明示指定してあげても変わらず。さらにはどっかにあった、Base64エンコードしてしまう方法も試すが一緒。 ど う し た ら い い ん だ
いろいろ探した挙句、原因は…mod_encodingでした、はずしたら動いたよ(’A`)。ちょっと前にパッチ当てしたのになんで効いてないんだとよくよくパッチ見ると、?以降のquery_stringに対してのみ処理してあって、?含まないkeitaircのURIには意味ねぇ。んじゃどうしようかってことで。
1. DAVステ(却下)
2. mod_encodingステ(却下)
3. DAV使うディレクトリだけ、EncodingEngine設定汁
LocationやDirectory内でEncodingEngineの設定が出来ないから上記のパッチが出来てるのに回避策はあるのか?と想いきや、VirtualHost内だったら設定有効だったり。ということでDAVで使うSSL部分のみでEncodingEngineをonしますた。こんなんでいいのか..



コメントをどうぞ