まず、ファイルの転送の前に、プロバイダ固有の規約がないか確認してください。拡張子が決められている、cgi-binなど特定のディレクトリに入れる指定、サーバに載せる前にプロバイダ側のスクリプトのチェックが必要な場合など、様々なケースが考えられますので必ず問い合わせてください。>
このサイトで紹介しているものはすべてPerlで書かれたスクリプトです。プロバイダにPerlのパス(CGIスクリプトの最初の1行)を確認しましょう。デフォルトの「#!/usr/local/bin/perl」で動作することが多いのですが、プロバイダが指定している場合はそれに従ってください。
また、プロバイダによっては、Perlのバージョンによってパスが変わる場合があります。ここのスクリプトは一部でバージョン5を使っていて「#!/usr/local/bin/perl5」としなければ、動作しないプロバイダもあります。 動作しない場合はメールなどでお問い合わせください。
CGIファイルも通常のファイルと同様にFTPソフトでサーバに送れますが、必ず、ASCII(テキスト)モードにすることを忘れないでください。CGIのスクリプトが書かれたファイルと、記録に使うログファイルはASCII(テキスト)モード、その他のHTMLや画像ファイルはBinary(バイナリ)モードで転送します。
- ●パーミッション
- ただし、これもプロバイダによって多少の違いがある場合がありますので、確認した方がいいでしょう。数字が違う場合や、ディレクトリそのものにパーミッションを付けなければいけない場合など、また、スクリプトの種類によっては「.htaccess」という初期設定用のファイルを作らなければならない場合も考えられます。
できたら同じサーバの先輩達のHPを見て、どのようなスクリプトを使っているか、参考にさせてもらったりするといいでしょう。同じ物でもサーバによって動作したりしなかったりということはよくあることです。
パーミッションはFTPソフトで設定することができます。FTPソフトはいろいろあるので、ここでは代表的な物の例をあげておきます。
- ●CuteFTP(WIN)
- パーミッションを付けたいファイルを左クリックして反転させます。
- メニューバーの「コマンド」→「カスタムコマンド」→「ファイルアクセスマスクを変更」を選択して、ダイアログを開きます。
(英語版の場合は「Commands」→「Custom Commands」→「Change Files Access mask」)
- パーミッションの数字を入力します。
- メッセージボックスに「・・・200 CHMOD command successful」と表示されれば成功です。
- ●WS−FTP(WIN)
- Remote Systemのウインドウで、パーミッションを付けたいファイルを左クリックして反転させます。
- 右クリックして「FTP Commands」→「SITE」を選択してダイアログを開きます。
- chmod ファイル名 数字」と入力して「OK」をクリックします。
例えば「chmod count.cgi 755」など。
- メッセージボックスに「・・・200 CHMOD command successful」と表示されれば成功です。
- ●Fetch(MAC)
- パーミッションを付けたいファイルをクリックして反転させます。
- 「Remote」メニューの「Set Permissions」を選びます(Fetch. 2.XにはSet Permissionsがないので3.0以降を使用してください)。
- 例えば755の場合は
-
|
Read |
Write |
Search
Execute |
|
User(u) |
X |
X |
X |
0111=7 |
Group(g) |
X |
|
X |
0101=5 |
Everyone(o) |
X |
|
X |
0101=5 |
とチェックして、「OK」をクリックします。
- 666の場合は
-
|
Read |
Write |
Search
Execute |
|
User(u) |
X |
X |
|
0110=6 |
Group(g) |
X |
X |
|
0110=6 |
Everyone(o) |
X |
X |
|
0110=6 |
とチェックして、「OK」をクリックします。