CGI プログラムの実行環境のチェック
簡単なPerlプログラムを例として、現在のWebサーバの下でCGIプログラムが実行可能かどうかをチェックしてみよう。
   
- 簡単な例
 
   
  - チェックポイント
 
  
  - WebサーバのPerlへのパスを「which」コマンドで確認する。(Webサーバにログインした状態で)
    
-  $ which perl
    
-  /usr/local/bin/perl
    
- 上のwhichコマンドの回答がそのパスを表す。
 
     
  - CGIプログラムとして実行するPerlプログラムについては、
    
- 文字コードをEUC-JP、改行文字LFで作成・保存する
    
- プログラムの最初の1行は以下のように修正する
    
-  #!/usr/local/bin/perl
 
     
  - パーミッション(アクセス権の設定)の変更
    
- アクセス権を「ls」コマンドで調べる。
    
-  $ ls -l sample_hello.pl
    
- -rwxr--r--    1 UserID   Group      215  July 13 14:40 sample_hello.pl
 
    
    - ここで -rwx r-- r-- の意味(見方)は、最初の「-」がファイルを表します。次の「r w x」が所有者・ユーザ(u)の権限を表し、ユーザは読み(r)書き(w)実行(x)の権限を持つことを意味します。次の「r - -」がグループ(g)つまりユーザと同じグループに所属する他のユーザの権限を表し、この場合はは読み(r)の権限のみ与えられている。
最後の「r - -」がその他のユーザ(Others)の権限を表す部分です。この場合は読む権限だけを持っていることを示しています。
    
- CGIプログラムを実行する前に、そのアクセス権限をWebサーバが実行できるように変更する。Webサーバはその他のユーザです。(変更はプログラムを保存後、一度でよい)
    
- 他人にCGIプログラムの実行権を与える
    
-  変更対象のプログラムがある場所で、「chmod」コマンドを使う
    
-  $ chmod o+x sample_hello.pl
    
-  これでパーミッションの設定は「-rwx r-- r-x」に変更されます。
    
- 権利を与える場合は「+」、取り消すには「-」を使います。たとえば、グループとその他のユーザの読み権を取り消す場合は
    
-  $ chmod go-r sample_hello.pl
    
- とします。これでパーミッションの設定は「-rwx --- --x」に変更されます。所有者の権限は削除変更しないでください。
 
  - プログラムのエラーが原因
    
- 以上の項目を確認して正しいのに、CGIプログラムがうまく動かない場合は、Perlのプログラム内にエラーがあります。