HOME > おもちゃ箱 >
perlって真珠?

ボッキ〜中島の初心者cgi設置奮闘記。Acci_Notice v3.0使用。
 

  ssiと-M    [ 007 ]

 タイトルがリスト形式になっている掲示板とかで、新着があると「New」なんて表示されるのがあり、それにチャレンジしようと思った。
 ssiを使ってそのBBSにではなく、トップページにその新着更新お知らせとして。

ディレクトリは、

index.html
「BBS」
 └ bbs.cgi
   bbs.log
   new.pl

new.pl
 #!usr/local/bin/perl
 $file = './bbs.log';
 if(-M $file < 7){ print "New"; }

↑ 7は、logが更新(書込みがあった日)から7日間だけ表示。

index.htmlには、 <!--#exec cmd="./BBS/new.pl"--> と記したのだけど、全然作動しない。
 いや、ちゃんとNewと表示されるのだけど、7日を過ぎてもちゃんと表示され続けているのだ。それじゃ意味がないんだなぁ。

 いろいろ調べたりして分かったのは、このlogへのパスは、new.plから見たもので、ssiの場合は、ssiを記したhtmlからのパスだということを・・。

  $file = './bbs.log';
   ↓
  $file = './BBS/bbs.log';

 にして解決した。
 これが分かるまで3日かかった・・・・。

 ただ、この方式だと、アクセスの多いBBSなどではその都度、ssiが作動するので結構サーバーに負担をかけるのではないかと思われる。 


 1    2  

Back