inquiry Ver.2.8以前の改造について
「inquiry」の認証システムは、説明の通り簡易になっています。
この方法だと「http://〜(絶対パス)」で移動先のファイルが指定出来るので、別のサーバーへ移動も可能なのです。それはそれで便利なのですが、指定したファイルにブックマークをつけることが出来ますし、履歴にも残ってします。お使いのPCが全くの個人のものならいいのですが、そうでない場合・・・つまり、パスワードを取得した方以外で、同じPCを使っている方たちにも閲覧出来てしまうです。
そういう意味で、絶対に何がなんでもパスを教えていない人には見せたくない!という場合は不向きなのです。(履歴を消して下さいと表示しておいても、忘れる場合だってありますしね)
しかし、簡単な改造で、それを回避する事が出来ます。
なお、この方法でカスタマイズするときは、必ず移動方法をJavaScriptの方に指定して下さい。inquiry Ver.2.8のCGIファイルをテキストエディタで開き、ずーーーーっと下方へ下がっていきますと、
sub secret {
print <<"EOM";
Content-type: text/html
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">
<TITLE>移動中です</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function nextp(){location.href="$s_url"}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#000000" TEXT="#ffffff" LINK="white" VLINK="white" LEFTMARGIN="50" ONLOAD="setTimeout('nextp()',1000)">
<BR><BR><BR><BR><BR>
<FONT SIZE="7">
<B>Now Loading...</B>
</FONT>
<BR><BR>
<FONT SIZE="2">
*いつまでたっても移動しない場合は
<A HREF="$s_url">こちら</A>をクリックして下さい。>/FONT>
<BR><BR><BR><BR><BR>
$fotter
EOM
exit;
}このような部分があると思います。
これは移動中の画面表示の部分のソースで、Java Scriptを使用しています。実際、こんな画面は必要ありません。ただ、HPは機能性だけでなく、見た目の面白さというのも多少はあってもいいのではないか思いまして(これは個人的な意見です)つけてみたわけですが、ここの部分を改造することで、上記の問題を回避する事が出来ます。
具体的に説明しますと、
sub secret {
print <<"EOM";
Content-type: text/htmlと、
EOM
exit;
}
の間に、パスワードを取得しなければ移動出来ないページのタグを書き込んでしまえば良いのです。ちなみにフレーム指定のページにしてもちゃんと動きます。
フレームの場合はこんな風に記述します。sub secret {
print <<"EOM";
Content-type: text/html
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">
<TITLE>フレーム</TITLE>
</HEAD>
<FRAMESET COLS="90,*" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0">
<FRAME SRC="./index.html" NAME="left">
<FRAME SRC="./secret.html" NAME="right">
<NOFRAMES>
このページはフレームを使用しています。ご了承下さい。
</NOFRAMES>
</FRAMESET>
</HTML>
EOM
exit;
}改造するにあたっての注意点は、
Content-type: text/html
の下はかならず一行開けて下さい。
それと、このスクリプトは日本語コードにシフトJISを採用しています。なので、
<META HTTP-EQUIV="Content-type" CONTENT="text/html charset=Shift_JIS">これをヘッダーに必ずいれて下さい。さらにスタイルシートやJava Scriptを使う場合、
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">,これも付け足しておいた方がよいでしょう。
HPを作成ソフトではなくタグ手打ちで作られている方だと、そう難しい改造ではないと思います。興味のある方はお試し下さい。
サイズを指定した別窓の出し方
通常よく使用される「target=_blank」では、サイズまで指定する事は出来ません。サイズを指定する為には、JavaScriptを使用します。以下のソースを<head>〜</haed>の間に張り付けて下さい。
<script language="JavaScript">
<!--//
function openWindow()
{
window.open("","win1",'resizable=no,scrollbars=yes,width=350,height=350');
}
//-->
</script>
横幅はwidthで、縦幅はheightで指定しています。この部分はお好みで変えて下さい。
次に、上記で指定したサイズで呼び出す時は、(例・cgi-binというフォルダにあるminidiary.cgiを呼び出す場合) <a href="cgi-bin/minidiary.cgi" onclick="openWindow()" target="win1">minidiary</a>
このように記述します。