2004/12/29(水)AWStats導入記

2004/12/29 4:00 PC(Linux)
そういやAWStats入れてなかったな(過去1回挫折)と思いだして、入れてみることにする。

dselectで入れてみたが、なんかどこに入ったのかよく分からない(あとで見直してみたら/usr/lib/cgi-bin/に入っていた気配)。
アンインストールしてやり直すことにする。

なお、参考サイトは↓、とても充実。
http://cyberam.dip.jp/linux_server/log/awstats60_main.html

手順ログ。
1. perlのバージョンをチェック - 5.8.3 OK
2. httpd.confのログ記録方式をチェック - combined で変更の必要なし。
3. AWStats6.2 stableをダウンしてtar -xvzfで展開。
4. 解凍したディレクトリのwwwroot/cgi-bin中のファイルをawstats.model.confを除いて設置箇所に転送。
5. mkdir /etc/awstatsして、wwwroot/cbi-bin中のawstats.model.confを/etc/awstatsに転送
6. mv /etc/awstats/awstats.model.conf awstats.conf.org
7. cp awstats.conf.org awstats.conf
8. awstats.conf書き換え

51c51
< LogFile="/var/log/httpd/mylog.log"
> LogFile="/var/log/apache/access.log"

147c147
< SiteDomain=""
> SiteDomain="dt8.jp"

197c197
< DirData="."
> DirData="/var/www/cgi-bin/awstats/awstats_db"

206c206
< DirCgi="/cgi-bin"
> DirCgi="/cgi-bin/awstats"

216c216
< DirIcons="/icon"
> DirIcons="/cgi-bin/awstats/icon"

455c455
< SkipHosts=""
> SkipHosts="REGEX[^192\.168\.]"

862c862
< Lang="auto"
> Lang="jp"

9. 解凍したディレクトリのwwwroot/iconディレクトリを設置箇所に転送。
10. 設置箇所のディレクトリに任意名のdbディレクトリ(awstats_dbとした)を作成。
11. cron設定で、cron.houlyディレクトリにawstatsの更新スクリプトを書いて設置。

なお、cron.hourlyが無かったのでmkdir /etc/cron.houlyして、/etc/crontabに

01 * * * * root test -e /usr/sbin/anacron || run-parts --report /etc/cro
n.hourly

を追加。本当はこのままだとログのローテートに引っかかって記録されないログが出てきてしまうが、まあ今回はこれで良しとしておく。

静的なリンクのみでファイルを吐く方法もあると思うのだが調べていない。その場合、awstats.plはwwwエリアから隠せる。こんなんで、セキュリティ大丈夫だろうか……

それにしてもconfigがでかい。このサイズだと私のemacsの腕では編集が大変である。guiっぽい管理ツールの導入をそろそろ考えた方が良いのだろうか。むーん。

2004/12/17(金)perlの処置

2004/12/17 14:00 PC(Linux)
per.5.8を入れた理由を思い出した。どうやらmysql関係のlibが5.8じゃないと動かなかったらしい。
さて、
・5.8系と5.6系はバイナリ非互換とかなんかそんな話。
・debianのstableはほとんどが5.6系依存で固められている。
・が、5.8でないと動かないソフトもある。(mysql関係等)
・個別コンパイルすれば、5.8系でまとめることは可能。

という線らしい。しかしなんかやだなあ。PHPじゃあるまいし……

とりあえず、よくよく考えてみたらmod_perlを入れる意味というかmod_perlちゃんと動く気がしないので止めて、見なかったことにした。今のうちのサイトで動いてるCGIはグローバル変数の初期化・お掃除をちゃんとやってる気がしない。dirtyなCGIをぽこぽこ実験するサイトなのだから、mod_perlで動かないのが出てくると切り分けがややこしいしストレスチックになる。かといって、拡張子変えたりLocation切り分けで棲み分けるのもなんだかばかばかしい。

とりあえず、このままほっておいてパッケージで入るものだけで頑張ろう。どうしてもmakeしなきゃいけないものはやるにしてもね。

2004/12/16(木)apache死亡事件顛末 in perl5.8 <-> perl5.6.1

2004/12/16 17:00 PC(Linux)
apacheを殺してしまった問題。

一番最悪の殺人方法で、apacheのパッケージを削除してしまった。

原因。なぜ入れたのかは覚えていないが、現在インストールされているのがperl-5.8(unstable)。で、perl-5.6系でないと動かないパッケージを入れようとしたところ、dselectの依存解決に任せていたら、↓こんなことになった。

The following packages will be REMOVED:
aalib1 abiword abiword-common abiword-gtk abiword-plugins apache
apache-common apache-dev apache-utils apel ark asiya24-vfont autoconf
automake css-mode defoma docbook docbook-xml dpkg-dev emacs21 fontconfig
gconf gdk-imlib1 gdm gnome-s gnome-bin gnome-common gnome-core
gnome-libs-data gnome-panel gnome-panel-data gnome-session gnome-terminal
gnome-users-guide gs gs-common gsfonts gsfonts-x11 html-helper-mode
imagemagick imlib-base imlib1 jdk1.1 jvim-canna kab kaffe-pthreads karm kate
kcalc kcharselect kchart kcoloredit kcron kde kdebase kdebase-audiolibs
kdebase-libs kdelibs3 kdelibs3-bin kdepasswd kdepim-libs kdf kdict kdm kedit
kfind kformula kfract kghostview khexedit kiconedit kinput2-canna-wnn kit
kivio kjots kmail knewsticker knode knotes koffice koffice-libs konqueror
konsole kontour korganizer korn koshell kpackage kpaint kpm kpresenter
kruler kscreensaver ksirc ksnapshot kspread ksysv kterm ktimer kugar kuser
kview kword lbxproxy libapache-mod-ruby libarts libdbd-mysql-perl
libdbi-perl libfontconfig1 libgconf11 libgdk-pixbuf-gnome2 libgdk-pixbuf2
libgimp1.2 libglade-gnome0 libglade0 libgnome-vfs-common libgnome-vfs0
libgnome32 libgnomeprint-bin libgnomeprint-data libgnomeprint15
libgnomesupport0 libgnomeui32 libgnorba27 libgtk1.2 libgtkxmhtml1
libimage-size-perl libkdenetwork1 libkmid libkonq3 libmagick5
libnet-daemon-perl libplrpc-perl libqt2 libungif4g libwmf0.2-2 libxaw7
libxft1 libxft2 mc-common mew mozilla mozilla-browser mozilla-mailnews
mozilla-psm mysql-client mysql-server nessus openssl perl perl-modules php4
php4-dev php4-mysql proftpd proftpd-common proxymngr psfontmgr rep-gtk rpm
sawfish scrollkeeper secpolicy sgml-base sgml-data skk skkinput
ttf-xtt-wadalab-gothic ttf-xtt-watanabe-mincho twm vflib2 watanabe-vfont
x-ttcidfont-conf x-window-system x-window-system-core xaw3dg xbase-clients
xdm xemacs21 xemacs21-basesupport xemacs21-bin xemacs21-mule
xemacs21-support xfonts-abi xfwp xlib6g xlibs xnest xterm yc-el

どうもperl(perl-5.8)を削除しようとしたらしい。慌てて止めたが、後の祭り。消えた可能性があるのを全て確認し、入れ直した。もしかすると、動いてないdaemonがあるかもしれない他、apache上でのperl-CGIの実行速度が落ちた気がする。

実行速度が落ちたことに関して考え得る原因:
1.apacheのパッケージが狂った
2.perlのパッケージが狂った
3.apacheでmod_perl,speedycgiかなんかが動いていた

1. 2.は分からないのでとりあえずおいておくとして、3に関してはmod_perl.soやspeedyCGIが入っていた形跡がないので、可能性としてはmod_pelのapacheへの静的コンパイル。記憶あやふや。

とりあえず、トップページのカウンターを入れ替えてごまかす。
e-counterだとcgiを5回呼び出すことになるので、夢カウンターに。……これで前の実行速度の感覚に近づくってことはやっぱりmod_perlがくさいのだがどうだろう。

perl 5.6への巻き戻し方法はよくわからない。日本語ソースもないが、英語ソースもどうも?
OK キャンセル 確認 その他