実ファイルとnamzuおよびnginxの定義の関係性を示したWEbサイトが無いため(一部を開示してるWEbサイトは有ります)、関係性を示す必要が有ると思っため公開します。
namazuを利用する場合のnginx.confの設定の記録です。
関連するディレクトリとファイル
関連するファイルやディレクトリの一覧です。
/usr/local/etc/namazu/namazurc・・・・・・・・・・・namazuの設定ファイル
/var/www/hoge.hogehoge.jp・・・・・・・・・・・・・本サイトのrootディレクトリ
/var/www/hoge.hogehoge.jp/namazu・・・・・・・・・namazのrootディレクトリ
/var/www/hoge.hogehoge.jp/namazu/index・・・・・・インデックスのディレクトリ
/var/www/hoge.hogehoge.jp/namazu/index/mypage・・インデックスのディレクトリ(実インデックスファイルの場所)
/var/www/hoge.hogehoge.jp/namazu/search.html・・・検索用html
/var/www/cgi-bin・・・・・・・・・・・・・・・・・・・CGIプログラムのディレクトリ
/var/www/cgi-bin/namazu.cgi・・・・・・・・・・・・・namazuの検索プログラム
/opt/doc・・・・・・・・・・・・・・・・・・・・・・・検索結果の表示ファイルディレクトリ
/var/www/hoge.hogehoge.jp・・・・・・・・・・・・・本サイトのrootディレクトリ
/var/www/hoge.hogehoge.jp/namazu・・・・・・・・・namazのrootディレクトリ
/var/www/hoge.hogehoge.jp/namazu/index・・・・・・インデックスのディレクトリ
/var/www/hoge.hogehoge.jp/namazu/index/mypage・・インデックスのディレクトリ(実インデックスファイルの場所)
/var/www/hoge.hogehoge.jp/namazu/search.html・・・検索用html
/var/www/cgi-bin・・・・・・・・・・・・・・・・・・・CGIプログラムのディレクトリ
/var/www/cgi-bin/namazu.cgi・・・・・・・・・・・・・namazuの検索プログラム
/opt/doc・・・・・・・・・・・・・・・・・・・・・・・検索結果の表示ファイルディレクトリ
namazurcファイル
検索結果の表示させるファイルの定義です。
Index /var/www/hoge.hogehoge.jp/namazu/index
Template /var/www/hoge.hogehoge.jp/namazu/index/mypage
Replace /opt/doc/ http://hoge.hogehoge.jp/namazu/doc/
Template /var/www/hoge.hogehoge.jp/namazu/index/mypage
Replace /opt/doc/ http://hoge.hogehoge.jp/namazu/doc/
indexとTemplateを同じパスにしていないのは、別カテゴリをindexディレクトリ配下に作成する可能性が有るためのです。可能性だけです。
今のところ、インデックス情報は「index/mypage」配下に作成しています。
今のところ、インデックス情報は「index/mypage」配下に作成しています。
nginx.confファイル
namazuのディレクトリは静的ディレクトリのため、「location /namazu/」は不要ですが、みんなには公開しないため認証する記述しているためです。
「location /namazu/doc/」をネストしているのは、namazuディレクトリ配下を明示するためです。
location /namazu/ {
root /var/www/hoge.hogehoge.jp;
index search.html
auth_basic “Restricted”;
auth_basic_user_file /etc/nginx/.htpasswd;
#/opt/doc ・・・・namzuの検索ドキュメントディレクトリ
location /namazu/doc/ {
alias /opt/doc/;
allow all;
}
}
location /cgi-bin/ {
root /var/www;
location ~ .(pl|sh|cgi)$ {
try_files $url =404;
fstcgi_pass unix:/run/fcgiwrap/fcgiwrap.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_scriot_name;
}
}
root /var/www/hoge.hogehoge.jp;
index search.html
auth_basic “Restricted”;
auth_basic_user_file /etc/nginx/.htpasswd;
#/opt/doc ・・・・namzuの検索ドキュメントディレクトリ
location /namazu/doc/ {
alias /opt/doc/;
allow all;
}
}
location /cgi-bin/ {
root /var/www;
location ~ .(pl|sh|cgi)$ {
try_files $url =404;
fstcgi_pass unix:/run/fcgiwrap/fcgiwrap.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_scriot_name;
}
}
nginxの再起動
# systemctl restart nginx
検索が正常に動作することを、祈ります。
logファイルのブラウザ表示
teratermのログファイルをnamazuで検索させたいと思い、設定した記録です。
logファイルインデックス化
logファイルをmknmzでインデックスを作成するために、mknmzrcを修正する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# cd /usr/local/etc/namazu # # cp mknmzrc mknmzrc_org # # vi mknmzrc # # diff -c mknmzrc_org mknmzrc *** mknmzrc_org 2024-01-18 22:07:42.000000000 +0900 --- mknmzrc 2025-02-13 19:46:10.959020888 +0900 *************** *** 39,44 **** --- 39,45 ---- # "|.*\\.od[tspg]" . # OpenOffice2.0 # "|.*\\.rtf" . # Rich Text Format "|.*\\.hdml|.*\\.mht" . # HDML MHTML + "|.*\\.log" . # LOG # "|.*\\.mp3" . # MP3 # "|.*\\.gnumeric" . # Gnumeric # "|.*\\.kwd|.*\\.ksp" . # KWord, KSpread # |
mknmzコマンドでインデクスを作成する。
コマンドは省略します。
logファイルのインデックスが出力情報から作成されたことを確認する。
logファイルをnginxでブラウザ表示させるために設定する。
拡張子の「.log」がmime.typesファイルに記述が無いため、ファイルをダウンロードしてしまう。
mime.typesファイルを直接修正しても問題はない。
ブラウザに直接表示させるためにngnxの設定を追加する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# cd /etc/nginx/default.d # # vi namazu.conf # cat namazu.conf : # /opt/doc namzuの検索ドキュメントディレクトリ location /namazu/doc/ { alias /opt/doc/; location ~\.(txt|log)$ { charset UTF-8; #add_header 'Content-Type' 'txt/plain'; #types { # text/plain log txt log; #} types { } default_type text/plain; } } : # |
nginxを再起動する。
1 2 3 4 5 6 |
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successfu # # systemctl restart nginx # |