宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
mod_estraierのUbuntu(deb系)での導入手順をこないだ見ようと思ったらサーバが落ちてて難儀したので、こっちにもミラーしておく。
オープンソースマガジン2006年6月号で紹介されているmod_estraierは、Apacheをプロキシとして利用することでWebの閲覧履歴をキャッシュし、「自分が見たことのあるページ」だけを対象に全文検索を行えるようにするソフトウェアです。Web全体ではなく閲覧履歴だけを対象に検索できるので、「確かどこかで見たことがあったんだけど、どこだったかな……」といったうろ覚えのページを探すのに最適です。
風博士ではブラウザ自体にこのような機能を持たせていたり、Firefoxではファイルキャッシュを全文検索できるsearchcacheといった拡張機能が合ったりするのですが、mod_estraierを導入すると、以下のようなメリットがあります。
オープンソースマガジンの特集記事ではFedora CoreとDebian(sid?)の場合の導入手順が紹介されていますが、私の手元のUbuntu [Dappar Drake]ではそのままではうまくいかず、色々と手を入れなくてはなりませんでした。Ubuntu [Dapper Drake]での最終的な導入手順をここにまとめておきますので、同じような環境を使われている方は参考にしてみてください。
まず、必要なパッケージをインストールします。mod_estraier以外はaptで導入できますので、一括してインストールしてしまいましょう。
mod_estraierは配布ページからソースコードをダウンロードして展開し、自分でビルドします。
オプションでパスや環境変数を指定しないとビルドに失敗してしまいますので、注意が必要です。
インストールまで完了したら、次は設定です。
まずHyper Estraier(mod_estraierが利用する全文検索システム)の設定を変更しておきます。初期状態では起動時にHyper Estraierを自動起動する設定になっていませんので、/etc/default/hyperestraier を編集して、自動的に起動するようにしておきましょう。
NO_START=1
という行がありますので、これを以下のように書き換えて上書き保存してください。
NO_START=0
次に、Hyper Estraierを起動し、検索インデックスを保存するデータベース(ノード)を作成します。
以上のコマンドでHyper Estraierを起動したら、Webブラウザで「http://localhost:1978/master_ui」を開きます。すると、Hyper Estraierの管理画面が読み込まれます。ここでメニューから「Manage Nodes」を選択し、2つあるテキストボックスの左側にノード名「web」、右側にその説明(適当で構いません。私は「for mod_estraier」としました)を入力して「create」ボタンをクリックします。これで、Hyper Estraierの準備はできました。
次は、Apache2をプロキシとして利用するための設定です。
Apache2では設定ファイルを分けておくのがマナーのようなのですが、話を単純にするために、後方互換性のために用意されているhttpd.confに設定を書くことにします。
以下の内容をそのまま貼り付けてしまって構いません。なお、先の手順で作成したHyper Estraierのノードを「web」以外の名前にしていた場合は、以下の例の強調箇所もそれに合わせて書き換えてください。
LoadModule estraier_module /usr/lib/apache2/modules/mod_estraier.so ProxyRequests On <Proxy *> Order deny,allow Deny from all Allow from 127.0.0.1 SetOutputFilter estraier EstraierNode http://localhost:1978/node/web EstraierUser admin EstraierPass admin EstraierLanguage ja EstraierDenyURI http://[a-z]*.?google.co EstraierAllowURI http://labs.google.com/ EstraierDenyURI favicon.ico EstraierUseWeight On EstraierFilterCommand ^application/pdf H@/usr/share/hyperestraier/filter/estfxpdftohtml EstraierFilterCommand ^application/msword H@/usr/share/hyperestraier/filter/estfxmsotohtml EstraierFilterCommand ^application/vnd.ms-(excel|powerpoint) H@/usr/share/hyperestraier/filter/estfxmsotohtml </Proxy>
また、このままだと文字コードが指定されていないページを読み込んだときにApache2が余計な文字コード指定を加えてしまうため、文字化けすることがあります。/etc/apache2/conf/charset の中にその定義がありますので、「#」文字でコメントアウトしておきましょう。
でファイルを開き、
AddDefaultCharset UTF-8
となっている行を
#AddDefaultCharset UTF-8
とコメントアウトし、上書き保存します。。
そして、Apache2のプロキシ機能を有効にし、Apache2を再起動します。
最後に、Webブラウザの設定も変更しておきます。Firefoxの場合は設定ダイアログを開いた後、「一般」タブの「接続」欄にある「接続設定」ボックスで、HTTPプロキシのホスト名を「localhost」、ポートを80番と記入して、ダイアログを閉じます。
以上で全ての設定は終わりです。mod_estraierのさらに便利な使いかたや、動作原理などについては、オープンソースマガジン本誌の特集記事をご覧下さい。
の末尾に2020年11月30日時点の日本の首相のファミリーネーム(ローマ字で回答)を繋げて下さい。例えば「noda」なら、「2006-08-07_modestraier.trackbacknoda」です。これは機械的なトラックバックスパムを防止するための措置です。
writeback message: Ready to post a comment.