Namazu-users-ja(旧)


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

Re: mknmz-squid 実行時にメディアタイプの取得に失敗し停止



<20010203102739.BB69F38802@xxxxxxxxxxxxxxxx>の記事において
kai13@xxxxxxxxxxxxxxxxxxxxさんは書きました。

>> mknmz-squid (http://src.presen.to/src/)
>> を用いてSquidのキャッシュ検索の実験をはじめたのですが、
>> 実行時にメディアタイプの取得に失敗し停止するエラーで
>> 新規のインデクス作成が出来なくなってしまいました。
>> 
>> 詳細:http://tat6.ice.ous.ac.jp/akita/memo/mknmz-squid.html

  ざっとみてみました。

  これは mknmz 内の decide_type() の問題とも言えるし、squid filter の
問題とも言えます。ファイル名による media type の推測を File::MMagic の
判別に優先させる場合が特殊なので、この場合は text/plain が優先されてし
まいます。

  対策としては、

+ decide_type() を書き換えて application/x-squid-cache の判別を優先さ
  せる
+ squid filter の add_magic で addFileExts でなく addMagicEntry を呼ぶ
  ようにし、適切な magic entry を書く

  後者の方がより elegant な実装と言えます。が、そのためには squid の
キャッシュファイルが確実に判断できるヘッダのようなもの(signature)がわ
からないといけません。その辺りなにか御存知ありませんでしょうか?

# decide_type() のコードはかなり dirty なのでなんとかしたい... という
# かこの関数の存在自体が dirty だ。
-- 
野首 貴嗣
E-mail: knok@xxxxxxxxxxxxx