【HTTPはApacheで】
当初はTomcatでそのままHTTPリクエスト受け付ければいいかなと
思っていたのですが、負荷テストをやったら、Solrの内部処理よりも、
HTTPの解釈まわりで詰まったりしました。
ということで、餅は餅屋的にApacheを前に立てて、AJPでTomcatに
連携させることにしました。
【文字コード(UTF-8でうまいことやる)】
Apacheとの接続設定のついでに、Tomcatのserver.xmlに
エンコーディングの設定をしてあげないと、
いやーんな事になってしまいました。
<Connector port=”ポート” ~略~ protocol=”AJP/1.3″ ~略~
useBodyEncodingForURI=”true” URIEncoding=”UTF-8″ />
でもって文字コードネタで↓に書かれていることまんまですが、
Linux で root 権限なしでも Solr を Tomcatの上で動かす1つのやりかた
SetCharacterEncodingFilter.class を WEB-INF/classes/filters に突っ込んで、
web.xmlに↓のような定義を突っ込んでいます。
<filter>
<filter-name>encodingfilter</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
技術評論社
売り上げランキング: 4461
検索エンジンに興味のある全ての知識レベルの方にお勧め
コメント