TOP > PHP for Win32 >
PHP4からNamazu関数を呼び出すためのモジュールが塚田卓也氏によって開発されました。
このモジュールをWindows版PHPでも使えるようにVisualC++でビルドしてみました。
php4_namazu-3.0.0 PHP4.3.x(24KB)
php4_namazu-2.1.0 PHP4.1.x(24KB) PHP4.2.x(24KB)
php4_namazu-2.0.1 PHP4.0.6(20KB) PHP4.1.x(20KB)
@ ファイルのコピー
php_namazu.dll
圧縮ファイルを解凍し、PHP4のディレクトリにあるextensionsフォルダにコピーしてください。
nmz.dll
Namazuのインストールディレクトリのlibフォルダの中にあるので、それをシステムフォルダ
(Win9x/MeならC:\WINDOWS\System 、WinNT/2000ならC:\WINNT\System32 )に
コピーしてください。このDLLはNamazu2.0.6から同梱されています。
A 設定
php.iniに以下を加えておいてください。
| extension=php_namazu.dll |
Namazu関数を有効にします。
|
namazu.debugmode = Off |
namazu.debugmode
(Off | On)
namazu.lang
デフォルトの言語を指定します。(ja | ja_JP.SJIS | fr | es)
jaを選択すれば日本語(EUC)、ja_JP.SJISを選択すれば日本語(SJIS)、frを選択すれば
フランス語、esを選択すればスペイン語、何も指定しなければ英語になります。
namazu.loggingmode
デフォルトのNMZ.slogへの出力を指定します。(Off | On)
namazu.sortmethod
デフォルトの並べ替え方法を指定します。(score | date | field:{field_name})
namazu.sortorder
デフォルトの並べ替え順を指定します。(descending | ascending)
B PHP情報の確認
以上の作業が終わったら、PHPの情報を表示するためのテストスクリプトを作成し、Namazuモジュールが
組み込まれているかブラウザで確認してください。
テストスクリプトの例
|
<?php |
正しく組み込まれていれば以下のように表示されます。

図1 phpinfo()の出力(namazuに関する部分のみ)
これが表示されればインストールは完了です。
このページを参照。
サンプルスクリプト
ソースコードの中にサンプルスクリプトが含まれています。参考にしてみてください。
また、いわきり氏によってサンプルスクリプト(namazu.php)が公開されています。
http://datula.mio.org/~iwakiri/php_nmz_sample.tar.gz
これを namazu.cgi の代わりに使えば、検索結果の表示を自分の好きなようにカスタマイズできます。
namazu.cgiのカスタマイズには限界があるので、検索結果の表示を自分好みにしたい人は試してみては
どうでしょうか?
(注意)
このサンプルスクリプトはマルチバイト対応正規表現関数mbregexを使用しています。
| PHP4.2.x 以降 | mbstringに統合 |
| PHP4.1.x | php_mbregex-1.3.1 |
| PHP4.0.6 | php_mbregex-1.2.1( サイトが閉鎖されたため、現在は入手不可 |
上記のphp_mbregex.dllを入手してインストールしてください。
mbregexについてはこちらを参照してください。
(注意)
.namazurcを使う場合にReplaceの設定のところで
| Replace /home/(.*)/public_html/ http://www.foobar.jp/\1/ |
のように正規表現を使うとURIの置き換えが正しくできないといった不都合が起きるのを確認しています。
その場合は正規表現を使わないようにしてください。
@ソースコードの入手
PHP CVS Repository http://cvs.php.net/cvs.php/pecl/namazu/
から入手できます。cvsコマンドを使ったほうがいいでしょう。
コマンドプロンプトを開き、
| cvs -d :pserver:cvsread@cvs.php.net:/repository login |
と入力します。そうするとPasswordを聞いてくるので、「phpfi」と入力します。
そのあと、以下のように入力します。
| cvs -d :pserver:cvsread@cvs.php.net:/repository co /pecl/namazu |
こうすればnamazuのソースコードを入手できます。
Aパッチの入手
CVSで入手できるコードのアーカイブにはVisualC++でビルドするためのプロジェクトファイルが
含まれていませんので、ここから入手してください。
php_namazu.dsp.zip 2002.10.14
また、php_namazu 2.0.1 のビルドには若干のソースコードの修正が必要です。
以下にそのためのパッチを置いておきます。これにはいわきり氏によって
PHP-devメーリングリストで公開されたパッチも含まれています。
php4_namazu-2.0.1-win.patch (10KB)
このパッチをあてた際に生成される namazu.dsp の改行コードはLFとなっています。
これだとVisualC++で読み込めないので、エディタで改行コードをCR+LFに変換してください。
全文検索システム Namazu for Win32
Namazu for Win32 はここから入手できます。
Namazu 2.x for Win32 --
日本語全文検索システム -- (SLのCool
Software)
cop氏によるNamazu for Win32を解説したレポートです。
NamazuをPHPで使う
「 Server Architecture for Windows」というサイトのページ。見やすくまとまってる。
PHPでNamazu
「Namazuを使おう」というサイトのページ。
Email: tag3@infoseek.jp