Namazu-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

日本語のディレクトリー名とファイル名で困っています



こんにちは、作山@日本総研です。

こちらのMLには初めての投稿です。
現在以下のような状況でうまくnamazuが利用できない状況に
なっております。

どなたか、アドバイスを頂けたらと思い投稿しました。
過去ログを色々と漁ったのですが、うまい解決方法が
見つけられませんでした。


発生している現象
 wgetで収集したファイル名がshift-jisで保存される
 為に、うまくmknmzできなかったり、Link先に
 Jumpできなかったりしている。
 (ディレクトリー名は %8Edなどのようにエンコード
 された状態で保存されているがファイル名が英字の
 場合は、正常にJumpできる。)


環境
 データ収集先のSite
  Win2K IIS5.0
    特にHTMLファイルは作成せず、ディレクトリーの参照
    で表示したいファイルを指定する形で使用している
    表示対象ディレクトリーやファイル名に
    日本語を使用しているものがある。

 検索用Site
   Solaris8(x86) OSインストール時の言語指定は、EUCを指定
   namazu         2.0.5  MLの過去ログを参考に
              Word用フィルターのPerlソースを修正して
              使用している
                            また、cgiの置いてあるディレクトリーに
              .namazurcを作成し、
                               Lang ja
                            を指定している。
      wget           1.6
      Text-Kakasi    1.0.5
      kakasi         2.3.3
      libiconv       1.6.1
      lv             4494
   wvWare         0.6.4

  データ収集時のパラメータ(適当に改行していますが、1行です)
      wget -b --output-file=$HOME/Get.log --proxy=off -N 
      -R .zip,.lzh,.jpg,.gif -r "http://xx.xx.xx.xx/"

  データ収集先のディレクトリー名とファイル名
  例1)  http://xx.xx.xx.xx/BATJOB仕様/JOB仕様書.doc
  例2)  http://xx.xx.xx.xx/BATJOB仕様/AA.doc

  wgetした時のローカルDisk内の状況
     xx.xx.xx.xx/BATJOB%8Ed%97l/inadl.doc
     xx.xx.xx.xx/BATJOB%8Ed%97l/AA.doc

  このディレクトリーのlsをnkfで 
     > ls | nkf --sjis --euc
  とすると
   inadl.doc が JOB仕様書.doc
 と見えるので、ファイル名がShift-JISで記録されている
 事が判明した。

 mknmzのパラメータ(適当に改行していますが、1行です)
  mknmz -U -a -O /usr/local/var/namazu/index 
    --replace='s#/export/home/hoge/xx.xx.xx.xx#http://xx.xx.xx.xx'
   /export/home/hoge/xx.xx.xx.xx
 とすると、namazu.cgiでは存在している文字列を指定しても
 ヒットしない。(多分mknmzが失敗していると思われる)

 mknmzのパラメータから -U を取ると、namazu.cgiで
 検索できますが、LinkをクリックしてもFile Not Foundと
 なってしまいます。
 この時のLinkのURL表示のファイル名はディレクトリー名と
 同じようにエンコードされていました。(多分..)

 試しに,wgetで保存したファイルのファイル名をeucに
 変えて、 mknmz -U 付きで作成し、namazu.cgiで検索したら
   /BATJOB%8Ed%97l/JOB仕様書.doc 
  のように表示されましたが、Linkをクリックしても
 File Not Foundとなりました。

本質的な問題として、wgetで取得したファイルのファイル名が
Shift-JISで保存されるのが問題だと思っていますが、
eucで保存させる方法が分からないのです。


以上、よろしくお願いします。
______________________________________________________________________
作山@日本総研              (Office) mailto:sakuyama.akio@xxxxxxxxx
TEL 03(5431)7839              (Home) mailto:sakuyama@xxxxxxxxxxxxxxxxxx
FAX 03(3422)1745                                   JWNTUG:JWNTUG001739