設定ヒント_01
Apache Web サーバで .cgiファイルを/cgi-bin/配下に置く方法
  • 当予約システムのために「yoyaku」というディレクトリをドキュメントルートとcgi-binの下に次のように作ったとして説明します。
    /var/www/html/yoyaku 〜 ブラウザから直接アクセスできる.htmlファイルを配置します。
    /var/www/cgi-bin/yoyaku 〜 .cgiファイルやデータファイルを配置します。
    また、Linuxの場合、Apacheのアクセス権を「その他(other)」という前提で、[777]とか[755]とか言う表現で記述します。
    念のため、[755]の場合、所有者(User)は、7=読込(r),書込(w),実行(x)の権利を持ち、グループ(Group)とその他(Other)は、5=読込(r),実行(x)の権利を持つが書込(w)の権限は無い、と言う意味です。
    ディレクトリについても同じ表記をしています。
  1. Windows PCで leger161.lzh を適当なフォルダにダウンロードします。
  2. leger161.lzhを解凍し、15個のファイルがあることを確認します。
  3. これら15個のファイルをWebサーバ上に次のようにアップロードし、アクセス権を設定します。
    /var/www/html/yoyaku     [777]
    /var/www/html/yoyaku/help.html   [644]
    /var/www/html/yoyaku/history.html  [666]
    /var/www/html/yoyaku/index.gif   [644]
    /var/www/html/yoyaku/index.html   [644]
    /var/www/html/yoyaku/leftfrm.html  [644]
    /var/www/html/yoyaku/link.html   [644]
    /var/www/html/yoyaku/logindex.html [666]
    /var/www/html/yoyaku/mkfile.pl   [640]
    /var/www/cgi-bin/yoyaku    [775]
    /var/www/cgi-bin/yoyaku/hints.txt   [644]
    /var/www/cgi-bin/yoyaku/lang01.txt  [644]
    /var/www/cgi-bin/yoyaku/member01.txt [644]
    /var/www/cgi-bin/yoyaku/object01.txt [644]
    /var/www/cgi-bin/yoyaku/readme.txt  [644]
    /var/www/cgi-bin/yoyaku/reserv01.txt [666]
    /var/www/cgi-bin/yoyaku/resvtion.cgi [755]
    (注)
    WindowsPCからLinux Webサーバに FTP でアップロードする場合、index.gif のみ binaryモード でアップしてください。
    他の14個のファイルはすべて asciiモード でアップロードしてください。
  4. 次の3ファイルの内容を修正します。
    1. resvtion.cgiファイル
          
      1. 冒頭1行目に #!/usr/bin/perl を持ってくる。
        (これは例です。実際に利用するWebサーバの Perl のあるディレクトリを指定下さい)
      2.   
      3. 30行目ぐらいの、$logdir = ""; を $logdir = "../../html/yoyaku/"; に変更。
         *** 当CGIのあるところからlogindex.htmlのあるディレクトリの相対パスです。
         そして最後に必ず / をつけてください。
      4.   
      5. さらに数行下の、$gif_f = "index.gif"; を $gif_f = "/yoyaku/index.gif"; に変更。
         *** Apacheのドキュメントルートからの記述
    2. index.html ファイル と leftfrm.htmlファイル
        <FRAME SRC="resvtion.cgi?act=・・・ を
        <FRAME SRC="/cgi-bin/yoyaku/resvtion.cgi?act=・・・ に変更。
        *** resvtion.cgiのあるディレクトリを指定
    (注)
     Linux上での viなどエディタが不得手な人はWindows PC上で先に変更し、FTPでアップロードしてください。
  5. /var/www/html/yoyaku のアクセス設定を[777]に出来ないなら(すなわちApacheが当ディレクトリ上で新規にファイルを生成出来ないなら)/var/www/html/yoyaku上で perl mkfile.pl を実行し、先に向こう1年分のログ空ファイルを生成しておいてください。
     /var/www/html/yoyaku のアクセス設定を[777]に出来るなら、mkfile.plは不要です。resvtion.cgiが自動でログファイルを生成します。


  6. 以上です。
[ 戻る ]