覚えてる、全部。

ときメモ(2006-05-20)
id:fifth_moonさんのマネをして私もmod_estraierを入れてみました*1

Hyper Estraierの準備

sudo port install hyperestraier
sudo port install tidy

Apache2のインストール

TigerのWeb共有はApache1.3.33なので止める。

sudo port install apache2

/opt/local/apache2/binにパスを通す

export PATH=/opt/local/apache2/bin:$PATH

mod_estraierのビルド

portが無いので野良ビルドmod_estraier-0.3.1.tar.gzを展開して、

CPPFLAGS="-I/opt/local/include" LIBS="-L/opt/local/lib" ./configure
make
sudo make install

設定

基本的にmod_estraierのページ通り。
/opt/local/apache2/conf/httpd.confを編集します。無ければサンプルのをコピーする。

sudo cp /opt/local/apache2/conf/httpd.conf.sample /opt/local/apache2/conf/httpd.conf

セキュリティは気をつけて。多分このままじゃやばいです。設定終わるまでルータの背後に置いておくのが無難。
で、中身編集。一番最後に以下の内容を貼り付け。

LoadModule estraier_module modules/mod_estraier.so
ProxyRequests On
<Proxy **>
 Order deny,allow
 Deny from all
 Allow from 127.0.0.1
 Allow from ::1
 SetOutputFilter estraier
 EstraierNode http://localhost:1978/node/test
 EstraierUser 管理者ユーザ名(好きな名前を付ける)
 EstraierPass 管理者パスワード(好きな名前を付ける)
 EstraierLanguage ja
 EstraierDenyURI http://[a-z]**.?google.co
 EstraierAllowURI http://labs.google.com/
 EstraierDenyURI favicon.ico
 EstraierUseWeight On
 EstraierFilterCommand ^application/pdf H@/usr/local/share/hyperestraier/filter/estfxpdftohtml
 EstraierFilterCommand ^application/msword H@/usr/local/share/hyperestraier/filter/estfxmsotohtml
 EstraierFilterCommand ^application/vnd.ms-(excel|powerpoint) H@/usr/local/share/hyperestraier/filter/estfxmsotohtml
</Proxy>


HEのインデックスを置くための適当なフォルダを掘って、その中で初期化実行した上で起動。

estmaster init casket
estmaster start casket


Apache2起動。

sudo /opt/local/apache2/bin/apachectl start

http://localhost:1978/master_uiを開き、「Manage Nodes」、testとcasketと入力してcreate。名前変えたなら適宜置き換える。


さあテスト。
システム環境設定→ネットワークからHTTPプロキシ設定。localhost:80にする。で、適当なページをいくつか見た上で、http://localhost:1978/node/test/search_uiを開いてそのページ内の単語で検索をしてみる。結果が出てくれば導入完了っと。

自動起動設定

いちいちターミナルからApache2とestmasterを起動するのは凄まじく面倒くさいので、マシンのブート時に起動させてしまいましょう。

sudo launchctl load -w /Library/LaunchDaemons/org.darwinports.apache2.plist

コレでApache2が自動起動するように。

で、estmaster。
/Library/LaunchDaemons/にnet.hyperestraier.estmaster.plistってファイルを作って、以下の内容を記述*2

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Label</key>
	<string>net.hyperestraier.estmaster</string>
	<key>OnDemand</key>
	<false/>
	<key>ProgramArguments</key>
	<array>
		<string>/opt/local/bin/estmaster</string>
		<string>start</string>
		<string>-bg</string>
		<string>HEのインデックスを置いたフォルダのフルパス。'casket'まで含む。</string>
	</array>
</dict>
</plist>

そしておもむろに、

sudo launchctl load -w /Library/LaunchDaemons/net.hyperestraier.estmaster.plist

ちなみに、インデックスのフォルダ・パス/casket/_node以下に.DS_Storeがあるとestmasterが起動しない。ターミナルからrmする。

rm インデックスのフォルダ・パス/casket/_node/.DS_Store

試しに再起動して、アクティビティモニタで「httpd」「estmaster」を探して起動してれば完了。してなければなんかおかしい。表示は「全てのプロセス」にして探すこと。


これで導入は全て終了。後は何も考えずにWebを見てれば見た物が全て勝手にインデックス化されていきます。で、キーワードさえ覚えていれば検索を掛けて探し出せる。