Bijutsubu Linux Users Group
 
 
BLUG
 
 
Since 1999/6/19
 
 
INDEX
 
  HOME
Article
MailingList
Members
Link
Declaration
Policy
BLUG FAQ
Mail

 
     
 
Graphics
 
 
2D
The GIMP
Sketch
XPaint
3D
Blender
Moonlight
POV-Ray
Image Browser
XV
gqview
gtksee
compupic
Image Viewer
ElectricEyes
ImageMagick

 
     
 
Tools
 
 
gimp
xv
mule
zsh
apache
cvs

 

 
update CGI ver0.1 について
 
 

CGI について

なんのCGI なの?

このCGI は、BLUG2/blugorig に置いてある元のファイルから、こんな風に、BLUGのリンクとかのテーブルに一気に当てはめるCGI です。
リアルタイムにCGI が反応しても良いのですが、見る人にとって遅いだろうと思います。
アップデートする人がファイルをアップして、その時だけupdate CGI を動かしたほうが、まあ良心的かなと思ったわけです。

記事を書く時の注意

日本語は、今のところ euc しか通らないです。
なぜなら、 テンプレートで文字コードを euc として指定しているからです。
CGI でコンバートすることもできるのですが、またそれは今度ということにしてください。

<body> には、バックグラウンドの色を指定してください。
さもないとデフォルトの黒バックになってしまします。
<body>で字の色を指定していても、<body*>を<td*>に変えているだけなので、デフォルトの色になってしまいます。
ちなみにデフォルトの色は、黒なので、黒字に黒で読めません。
字の色を変えるなら明示的に指定してください。
まあこれは、テンプレートのデザインが変わればデフォルトの色も変わりますがね。

絵とかイメージなどをつけるときは、リンク先のパスを、BLUG2の下から書いてください。
BLUG2/blugorig から書くと場所が違うので、表示されません。
この辺の手直しも CGI でできるはずなんですが...
とにかく今は、イメージとかのリンクには注意してください。
なんだったら、相対パスでなく絶対パスで書いても結構です。

あと、<title></title> と <body></body> だけ入れたテキスト文でもとおります。
だけども、html 文は明示的に改行しないと改行してくれないですが。

アップするときの注意

元のhtml は、BLUG2/blugorig の中に入れてください。
イメージの推奨アップ先は、BLUG2/pics です。

CGI で加工する時の材料は、BLUG2/blugorig のなかだけです。
BLUG2/blugorig に入れたものは、読み出すだけで加工はしません。
CGI で処理後 出来上がったhtml は、BLUG2の下に置かれます。
まあ、リンクさえBLUG2から書くことを守っていただければ、良いかと思います。
後は、ノブに聞いてください。

アップしたら、http://www.bijutsubu.com/cgi-bin/blug/update01.cgi をたたいてもらえれば、CGI が実行します。
実行後、ちょっとしたレポートがでます。

まだ、だれでも実行できてしまいます。そのうちに実行するのにパスワードが必要なようにします。
あと、悪意のあるhtml 文でもそのまま加工してしまいます。
SSI とかでなんか悪い事しようとしているような人はアップしませんよね。
アップできる人が何かやろうとしていたら、こんなめんどくさいCGI での加工なんかやらずに、ストレートになんか置けばいいのですからね。

何をやっているか

まず、BLUG2/Template/blugbase.html から テンプレートとして、
最初から {title} まで         $tmplt01
{title} から {hombun} まで     $tmplt02
{hombun} から {article} まで    $tmplt03
{article} から最後まで       $tmplt04
の四つを切り出します

次に、BLUG2/blugorig の中のすべてのファイルの中を覗きます。
そして<title>と</title>の間をタイトルとしてarticleに加えます。
その時にリンクも作ります。
リンクは、そのファイルがBLUG2/の下にあるように作ります。
これらを $article という変数に入れます

その後、BLUG2/blugorig のあるファイルの <body>と</body>の間から、ボディとして切り出します。($body)
同時にまた、タイトルも抜き出しておきます。($title)
そして 同名のファイルをBLUG2の下に以下の順番にプリントして書き出します。
$tmplt01
$title
$tmplt02
$body
$tmplt03
$article
$tmplt04
これらをすべてのファイルについて実行します。

といって、プログラムを見せるのは恥ずかしいなあ。我ながら汚いソースです。
使用言語は、Perl です。

<作成者 junm 2000/02/04>

 

 

 
Article
 
  BLUG Mark Contest(嘘)
BLUG Mailing List
赤帽六式にXVを突っ込む方法。
update CGI ver0.1 について
BLUG Frequentry Asked Questions
My gimp_splash.ppm
BLUG News
Other BLUG
BLUG' LINK
Manifest of foudating BLUG
BLUG-ML
Policy of BLUG
Image Browser