2004年5月アーカイブ

うちのサイトのアクセス記録を見ると、NATSU-MICANからの転送量がやけに多い。
調べてみたら、NATSU-MICANはまず HEAD リクエストを送って、そこでLast-Modifiedが取れない場合は GET リクエストを送るらしい。
で、うちのサイトに HEAD リクエストを送ってみたら、見事に Last-Modifiedヘッダが返ってないじゃないですか!
つらつらと調べてみたところ、apache は SSI を使っていると Last-Modifiedを返さないことがわかった。
さらに調べてみると、apacheの XBitHack ディレクティブで full を指定してやれば、SSIの場合でも Last-Modified を返すことがわかった。
これで、今まで通り(?)30分に一回と言う頻度で NATSU-MICANがアクセスしてきても、HEADだけで返ってくれるはず・・・。
ちなみに、XBitHack は、on だと user の x bitを、full だと group の x bit をチェックして、立っていると上記の動きをするらしい。
・・・いまいち気持ちがわからなかったりするのだけれど、何故かうちのhtmlはx bit が立っていたりしたので気にしないことにする。
(と言うか、permissionめちゃくちゃだなあ・・・)
うちのサイトでは、analogって言うのとwebalizerって言うのを入れています。
これらを使うと、検索サイトからどんなキーワードで検索されて来たのかわかるのですが、どちらも文字化けしてしまって日本語のキーワードがわかりません。
analogの方は、既に私の手が入りまくっているので今回は手順は紹介しません(汗)。

webalizerの方は、以下のようなページを発見しました。
検索エンジンのバケ文字を直す

これを参考に、apacheのログをeucに変換して、それをwebalizerに食わせてやることで、文字化けがかなり改善できました。
一応、変換プログラムには、上記サイトのものに以下の1行を加えています。
  $_ =~ s/\\x([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
後は、上記サイトを参考にwebalizer.confのSearchEngineの行を追加して、cronから呼ばれるスクリプトを書いて完成です。
indexページに検索boxがあります。
ここで検索キーワードを入れると、見ているblogから検索されるのですが、その結果の検索画面でもう一度キーワードを入れると、今度はサイト内の全Blogからの検索になってしまいます。

これだと使いにくいので、cgi-bin/mt/search_templates/default.tmp を修正しました。
最初のformの内側に、以下を追加します。
<input type="hidden" name="IncludeBlogs" value="<$MTBlogID$>" />


このディレクトリに、comments.tmplって言うファイルもあるんだけど、こっちはどこで使われるのかしらん・・・?
NATSU-MICANとLast-Modifiedで、apacheの設定にXBitHackを入れたわけですが、その後SSIの #echo var="LAST_MODIFIED"がうまく反映されなくなってしまいました。
で、MTが吐くhtmlファイルのpermissionが664になっていてxbitが立ってないのが原因のように見えたので、mt.cfgの以下の行のコメントを外して有効にしました。
HTMLPerms 0774
これで効くような気がする・・・。

あとは、うちのサイトのトップページに、URL http://www.wizard-limit.net/でアクセスすると、ブラウザによってはファイルのダウンロードになったり、変なページ(バイナリをそのまま表示したような感じ)が表示されたりすることがあるようになりました。
具体的には、Windows2000のIE6は大丈夫だけど、WindowsXPのIE6だと駄目だったりします・・・。
症状的には、gzipのまま表示されてるのかな?と思ったりしますが、駄目なときはサーバのaccess_logにも残らないようなので、いまいち何が起きているのかわかりません・・・。
ちなみに、/index.htmlだと問題ないようです。
MovableType.orgによると、MovableType の 3.0 が出たようです。
今回から、基本的に有料!になったようですが、相変わらず個人ユーザ向けには Developers Edition と言うのを使えば無料らしいです。
が!
No more than one author and three weblogs
とのことなので、うちのように3author, 5 weblogs で運用しているところは困ってしまうのでありました・・・。
ときどき netstat -a なんぞで、変なportがlistenしていないか調べる。
# この間 socksが開いててひどい目にあったからね。
そしたら、tcp 1023 が開いている。これはなんだろ~?と思って調べたがわからない。

・・・さんざん悩んだ結果、同居人からsockstatと言うコマンドがあることを聞く。
sockstat -l ってやると、port毎にlistenしているプログラムを教えてくれるのだ。
これによると、rpc.drac・・・。そか、そうですか、とちょっと安心したのでありました。
netstat -a していると、*.smtpみたいな感じで全てのインターフェイスでlistenしているプログラムが結構ある。
基本的には内部向けのサービスが多いので、塞げるものは塞ぐことにする。
  • postgres
    postgresは、内部からだけで良い。調べてみたら、postgresql.conf の virtual_hostに書けば良いらしい。
    が、複数のIPを書く方法がわからない。
    とりあえず、
    virtual_host='127.0.0.1,192.168.0.1'
    
    って書いてみたら起動しなかった(泣)
    考えてみたらlocalhostだけでも困らないような気がしたので、
    virtual_host='127.0.0.1'
    
    で行くことにする。
  • bind9
    これは、内部向けと外部向けにサービスする。が、うちの場合はflets squareにもpppoeのセッションを張っているので、そっちにはサービスしたくない。 named.confのoptionsに、以下を追加してみる。
            listen-on {
                    127.0.0.1;
                    192.168.0.1;
                    210.254.71.72;
            };
    
  • samba
    sambaは内向きのみサービス。もともと、hosts allow で制限はかけていたけど、さらに以下を追加。
       interfaces = 192.168.0.1
       bind interfaces only = yes
    
  • sj3
    最近はwnnしか使ってないから止め!
  • shell
    なんでこれが開いてるんだろう?(汗) 一応、tcp wrappers で外からはアクセスできないようになってるけど、必要ないのでinetd.confから削除して止め!
  • printer
    lpdの起動オプションに-sを付けると、listenしなくなるらしい。
    内部からも駄目になるけど、ネットワークからはsamba経由でしか印刷しないから問題ないでしょう。
    /etc/rc.confに以下を追加。
    lpd_flags="-s"
    
  • wnn
    う、わかりません・・・(汗)
  • sunrpc
    portmapのオプションを調べると、-hと言うのがありました。
    /etc/rc.confに以下を追加。
    portmap_flags="-h 192.168.0.1"
    
    ※ マニュアルによると、-hフラグを使うと127.0.0.1は自動的に追加されるそうです。
    ※ これだと、udpはlocalhostと内部向きになるけど、tcpはならないみたい。 → さらに、dracdがエラーを出すようになったので、元に戻しました。む~? → と思ったら、portmapを再起動したら、dracdも再起動しないといけないらしい。-hフラグ復活。
  • snmp
    マニュアルだと、-pオプションでいけそうなことが書いてあるのですが、実際は-pオプションはpidファイルのパスみたい・・・。
いつでも文字化けに悩む日本人の私。
普段使っている FreeBSDでも、メールやファイルによっては文字化けと日夜戦わなければならない。

そんなときに、うろうろしていたら見つけたのが、
森山 将之のホームページへようこそ!
このページ。
良いです!ためになります!わかりやすいです!
iconvの非公式パッチを作っている方なんですが、機種依存文字とか、半角カナとか、Windows-31Jとか、いろいろ説明してくれちゃってます。

なかなか難しい事情もありそうなのですが、早く正式に採用されて、少しでも文字コードの混乱が収まらないものかしらん・・・。
と、言うわけでlibiconvをeucjp-ms対応にしてみることにします。
雑誌などでは日本語ロケールのパッチがあれば EUCJP-MSというものが指定できるようですが、portsそのままではできないようです。
のサイトを参考にして、portsにpatchを追加すると言うのをやりました。
以下、やり方の引用。
# /usr/ports/converters/libiconv/files
# fetch http://www2d.biglobe.ne.jp/~msyk/software/libiconv/libiconv-1.9.1-ja-patch-1.diff.gz
# gunzip libiconv-1.9.1-ja-patch-1.diff.gz
# mv libiconv-1.9.1-ja-patch-1.diff patch-ya
# perl -i -pe 's/libiconv-1.9.1\///g' patch-ya
# perl -i -pe 's/libiconv-1.9.1.orig\///g' patch-ya
こう言う方法で、portsに別のpatchが追加できるんですね~。メモメモ。
# 個人的には、perl -i -pe なんつーのも今まで使えなかったので、自分のものにしておきたいところ。

これで、iconv -l で EUC-JP-MSが出ることは確認。しかし、samba3を入れるのはまだ面倒なので、あまり意味なし・・・。
QTの研修を受けに行くことになる。
定員オーバーでマシンが足りないので、ノートPCにLinuxをインストールして来てくれとのことで、ノートに Fedora Core 1を入れてみる。
(たまたまCDが借りられたから)
CDからのインストールで、途中で言語を選んだ後はインストーラも英語。さらにグラフィカルにいろいろ教えてくれる。
なんと言ってもFreeBSDと違うなと思ったのが、Xの設定も全然難しいことなくGNOMEやKDEなどのデスクトップ環境が使えること。
私の場合、FreeBSDだといっつもXF86Configで苦労するのだ。中身は同じXFree86なのに、何が違うのかしらん?
QTのfree版も無事にインストールして、emacsでへろへろできることを確認。研修が終わったら返してしまうノートなので、設定は適当。

これで、準備は万端だぜ~!と思ったら、キャンセルが出たとかでノートはいらないとのこと・・・。ぉぃ!

ちなみに、QTのfree版だったらFreeBSDでもportsがあるので、無理にLinuxにする必要はないのであった・・・。
2004年5月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

このアーカイブについて

このページには、2004年5月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2004年4月です。

次のアーカイブは2004年6月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.1.1