SSI(Server Side Include)

ssi.shtml の文書中に CGI を挿入します。
ssi.shtml を呼び出す

プログラムの説明

  1. Perl のプログラムは、アンカーからリンクするか form の action から呼び出すのが一般的です。
    SSI(Server Side Include) は HTML の文書の中から Perl のプログラムを呼び出す機能です。
    WWW サーバーによっては、セキュリティのために使用を禁止しているところもあり、確認が必要です。
    <!--#exec cgi="ssi.cgi"--> の個所に ssi.cgi から吐き出された TEXT が挿入されます。
    内容は html と同じですが、SSI を使うときは拡張子を .shtml にします。
  2. ssi.shtml です。
    shift-jis でタイプして下さい。
    <HTML>
    <HEAD><TITLE>SSI Call</TITLE>
    </HEAD>
    <BODY>
      ssi.cgi を呼び出します。<BR>
      <!--#exec cgi="./ssi.cgi"-->
    </BODY>
    </HTML>
    
  3. ssi.shtml から呼び出される ssi.cgi です。
    shift-jis でタイプして下さい。
    #!/usr/local/bin/perl --
    print "Content-type: text/html\n\n";
    print "<H1>ssi.cgi が呼び出されました。</H1>\n";
    exit;
    

【NOTE】

SSI の機能は、セキュリティのために使用を禁止しているところもあります。
実際問題として、禁止されていると言いながら動く場合もあります。
また、サーバーが Apache の場合は、httpd.conf か .htaccess を設定する必要があるかも知れません。
.htaccess の内容です。
AddType text/x-server-parsed-html .shtml
Options Includes

今回は何の設定も必要無く ssi.shtml と ssi.cgi をアップロードして問題なく実行されました。
ssi.cgi には今までと同様に実行権を設定して下さい。

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(Perl)