Q&AQ&Aプログラムのディレクトリ構成は?Qプログラムファイルのディレクトリはどのように構成すればいいですか?Aディレクトリ構成は各プログラムの「設置手順」に書いてあります。圧縮ファイルを解凍したファイルがそのままディレクトリ構成になります。同じディレクトリに置かなければなりません。複数のCGIを設置する場合は下記のように各プログラム毎にディレクトリを分けて下さい。|---bbsdata||---link|---link.cgi|---linkdataサーバの転送先はどこですか?Qプログラムはサーバのどこに転送すればいいですか?ACGIのサーバ転送先は、サーバによって指定されている場合がありますので確認して下さい。(1)CGIプログラムをcgi-binディレクトリに置かなければならない場合があります。infoseek、@nifty、WAKWAK、hi-ho、Tripod<ディレクトリ構成例>cgi-bin|---bbs|---bbs.cgi|---bbsdata(2)通常のHPのHTMLディレクトリとCGIを実行するディレクトリが分離されていて、CGIのディレクトリに画像ファイルなどを置いてもブラウザから表示できない場合があります。その場合は、xxxdataをHTMLディレクトリとCGIディレクトリの両方に転送します。設定は、本Q&Aの「画像が表示されない」を参照して下さい。|---bbsdata||---cgi-bin|---bbs|---bbs.cgi|---bbsdataFTPの転送モードの違いは?QFTPでアスキー転送モードとバイナリ転送モードの違いは何ですか?Aアスキー(テキスト)転送モードはテキストデータを送るモードで、改行コードの変換を行います。改行コードは下記のようにOSによって異なります。自分のPCとサーバでOSが異なると改行コードの変換が必要です。Feedバイナリ転送モードは画像などのバイナリファイルをそのまま送るモードです。改行コードの変換は行いません。FTPで転送モードをファイル拡張子によって自動判別できる場合は下記のように設定します。バイナリ転送モードCGIを実行するURLは?QCGIを実行する為にCGIのURLはどのように指定すればいいですか?ACGIを実行するURLは通常のHPのURLと異なる場合がありますので確認して下さい。Found」のエラーが表示されます。ACGIのURLをご確認下さい。CGIを実行するURLは通常のHPのURLと異なる場合があります。http://cgi**.plala.or.jp/xxxx/xxx.cgiサーバがWindowsで実行できませんQサーバがWindowsですが、CGIを実行できません。AサーバがWindowsの場合は、UNIXと比較すると下記のような違いがあります。・パーミッションの設定は不要です。・1行目のPerlパスの記述は関係ありません。・CGIが直接アクセスするパスの指定は絶対パスで指定する必要があります。対処はプログラムの8行目に下記を追加して下さい。{chdir($1);}上記でも正常に動作しない場合は下記のようにして下さい。xxxdataディレクトリやcgi-lib.plなどのパスは相対パスで記述していますので、絶対パスに変更する必要があります。絶対パスはサーバによって異なりますが、http://のURLでは指定できません。管理画面で「画像格納ディレクトリ」を絶対パスで指定し、「画像読出ディレクトリ」をhttp://のURLで指定します。Error)のエラーが表示されてCGIを実行できません。A下記の原因が考えられます。プログラムの最初の行に下記のようにPerlへのパスが記述してあります。/usr/bin/perlこのパスはサーバによって定められています。サーバのHPでPerlのパスを確認してサーバの指定と異なる場合は修正して下さい。(2)CGIのパーミッションが間違っている。CGIプログラムのパーミッションが実行可でないと上記エラーが発生します。パーミッションはサーバの指定によりますが、一般的には「755」に設定すれば実行できます。xxxdataディレクトリのパーミッションを「755」に設定してみて下さい。(3)FTPの転送モードが間違っている。FTP転送でcgiファイルをバイナリモードで転送すると上記エラーが発生します。FTPの転送モードが下記のようになっているか確認して下さい。バイナリ転送モードBIGLOBEでサーバーエラーQBIGLOBEでサーバーエラーが発生したり、発生しなかったりします。Aプログラムの最初の行に記述してあるPerlパスを確認して下さい。ERROR」のエラーが表示されます。Aファイルの読み書きでファイルを開こうとした時に発生するエラーです。原因は下記が考えられます。(1)xxxdataディレクトリがサーバの所定の場所に存在しない。xxxdataディレクトリはCGIプログラムと同じディレクトリに置かなければなりません。(2)パーミッションが書込可になっていない。パーミッションはサーバの指定によりますが、xxxdataディレクトリのパーミッションを「777」、その中のファイルのパーミッションを「666」に設定します。(3)option.txtファイルが存在しない。xxxdataディレクトリの中にoption.txtファイルが存在しなければなりません。存在しない場合は、option.txtという空ファイルを作成して、サーバのxxxdataディレクトリの中に転送します。option.txtのパーミッションを「666」に設定します。option.txtはプログラムによりoption.cgiの場合があります。修正キーを入力せずに修正できてしまうQ掲示板などで[修正]をクリックすると修正キーを入力しなくても修正できますが、誰でも修正できてしまうのではないですか?Aこの修正はIPアドレスを認識しているので、書込み直後ならば本人は修正キーが必要ありません。IPアドレスが異なる他の人が修正しようとすると修正キーの入力が必要です。他の人が書き込んだ記事に対して[修正]をクリックしてみると分かります。IPアドレスが同じならば修正できます。最初のパスワードが分かりませんQCGIを設置して管理画面に入る為にはパスワードが必要ですが、最初のパスワードが分かりません。Aパスワードは各プログラムの「使用方法」に書いてあります。パスワードの初期値は半角小文字で「cgi」の3文字です。パスワードは管理画面で変更して下さい。パスワードがエラーになりますQ管理画面に入るパスワード「cgi」を入力してもエラーになってしまいます。Aデータの初期設定ができていない可能性があります。原因は下記が考えられます。(1)xxxdataディレクトリがサーバの所定の場所に存在しない。xxxdataディレクトリはCGIプログラムと同じディレクトリに置かなければなりません。(2)パーミッションが書込可になっていない。パーミッションはサーバの指定によりますが、xxxdataディレクトリのパーミッションを「777」、その中のファイルのパーミッションを「666」に設定します。パスワードを忘れてしまいましたQパスワードを忘れてしまったのですが、どこかを見れば分かりますか?Aパスワードは暗号化されていて元に戻すことはできないので管理者でもパスワードは分かりません。その場合はパスワードを初期化することになります。初期化は、xxxdata/option.txtのファイルをサーバへ転送してください。option.txtは空ファイルです。上記のファイル内容が初期化されますので、管理画面で「基本設定」の内容を再度、設定し直す必要があります。パスワードは「cgi」に初期化されます。option.txtはプログラムによりoption.cgiの場合があります。管理画面の設定ができませんQ管理画面の設定項目が全て空白で何も設定できません。Aデータの初期設定ができていません。原因は下記が考えられます。(1)xxxdataディレクトリがサーバの所定の場所に存在しない。xxxdataディレクトリはCGIプログラムと同じディレクトリに置かなければなりません。(2)パーミッションが書込可になっていない。パーミッションはサーバの指定によりますが、xxxdataディレクトリのパーミッションを「777」、その中のファイルのパーミッションを「666」に設定します。投稿でエラーが発生しますQ掲示板、投稿型の写真アルバム、登録型のスケジュール、登録型のリンク集で投稿時にエラーが発生します。投稿時にひらがな又は全角カタカナを1文字以上入れるようにお願い致します。この制限を解除したい場合は、CGIプログラムで下記の記述を削除願います。{&error;}又、投稿内容でhttpのリンク数を制限していますので、リンク数は4個以下でお願い致します。最大記事数は?Q記事数は最大どのくらいでしょうか?A記事の最大件数は特に制限しておりませんが、あまり多くなるとサーバに負荷が掛かると思いますので、最大300件程度でお使い願います。分類の最大件数は?Q分類を設定できるプログラムについて、分類の件数は最大どのくらいでしょうか?A分類の最大件数は特に制限しておりませんが、あまり多くなるとサーバに負荷が掛かると思いますので、最大30件程度でお使い願います。(1)Qアイコンなど全ての画像が表示されません。Aサーバによっては、通常のHPのHTMLディレクトリとCGIを実行するディレクトリが分離されていて、CGIのディレクトリに画像ファイルを置いてもブラウザから表示できない場合があります。主なプロバイダとしては下記があります。@nifty、WAKWAK、hi-ho、Tripodその場合は、xxxdataディレクトリをHTMLとCGIの両方のディレクトリに転送します。管理画面のアイコン画像又は「画像読出ディレクトリ」でHTML側のxxxdataディレクトリのURLを指定します。(2)Q画像掲示板や写真アルバムなど画像を表示するCGIで画像をアップしても表示されません。Aサーバによっては、通常のHPのHTMLディレクトリとCGIを実行するディレクトリが分離されていて、CGIのディレクトリに画像ファイルをアップロードしてもブラウザから表示できない場合があります。主なプロバイダとしては下記があります。@nifty、WAKWAKその場合は、xxxdataディレクトリをHTMLとCGIの両方のディレクトリに転送します。管理画面で「画像格納ディレクトリ」にHTMLディレクトリの絶対パス又はCGIからの相対パスを指定します。URL(http://)は使えません。絶対パスはサーバによって定められています。/public_html/例えば、@niftyの場合「画像格納ディレクトリ」を下記のように指定します。/homepage/xxxdataそして、「画像読出ディレクトリ」に上記ディレクトリのURLを指定します。http://homepage*.nifty.com/xxxdataBIGLOBEで画像が表示されないQサーバがBIGLOBEですが、画像が全く表示されません。ABIGLOBEの場合はCGIを呼び出すURLが異なる為、画像を表示するには管理画面の「画像読出ディレクトリ」でxxxdataディレクトリをhttp://のURLで指定します。http://www**.biglobe.ne.jp/~xxxx/xxxdata「画像格納ディレクトリ」を変更する必要はありません。hi-hoで画像が表示されないQサーバがhi-hoですが、画像が全く表示されません。Ahi-hoの場合は下記のように設定します。cgi-binディレクトリの直下に置きます。htmlディレクトリの両方に転送します。(3)管理画面で「画像格納ディレクトリ」と「画像読出ディレクトリ」を下記のように指定します。http://www.xxx.hi-ho.ne.jp/xxxx/xxxdata「画像読出ディレクトリ」はhtmlディレクトリのxxxdataをhttp://のURLで指定します。(4)CGIのURLは下記のようになります。|---bbs.cgi||---html|---bbsdata画像アップロードができないQ「画像格納ディレクトリ」と「画像読出ディレクトリ」の設定を確認しましたが、それでも画像のアップロードができません。A原因はパーミッションが考えられます。パーミッションはサーバの指定によりますが、xxxdataディレクトリのパーミッションを「777」に設定しているか確認して下さい。ファイルを作成できませんQ「ファイルを作成できません」のエラーが表示されます。Aファイルを新しく作成しようとした時に発生するエラーです。xxxdataディレクトリの中に作成されるので、xxxdataディレクトリのパーミッションを「777」に設定しているか確認して下さい。それでもエラーが発生する場合は、サーバ側の制限によって新しいファイルを生成できない可能性があります。サーバ側で使用制限していないか確認して下さい。使用制限の場合は対処できません。画像を削除できませんQ写真アルバムのCGIですが、画像ファイルをFTPで転送した後、その画像ファイルを削除することができません。A原因はパーミッションが考えられます。パーミッションはサーバの指定によりますが、FTPで転送した画像ファイルのディレクトリのパーミッションを「777」にして下さい。スケジュールが来年までしか入力できないQスケジュールの入力が来年までしか選択できませんが、その後は使用できないのでしょうか?Aスケジュールの入力は自動的に翌年まで入力できます。2009年になれば2010年まで入力できます。その後も同様に入力できます。BASIC認証が効きませんQBASIC認証で認証ダイアログが表示されますが、ユーザー名とパスワードを入力しても認証されません。A管理画面で「基本設定」の「パスワードファイル」を絶対パスで指定して下さい。この絶対パスはhttp://のURLでは指定できません。絶対パスは「パスワードファイル」入力欄の下にCGIの絶対パスが表示されますので、それを参考にして「.htpasswd」ファイルの絶対パスを指定して下さい。Forbiddenが表示されます。A@niftyのLaCoocanサーバの場合はCGIプログラムを下記のように変更して下さい。.htpasswdhi-hoでBASIC認証が効きませんQhi-hoサーバでBASIC認証の認証ダイアログが表示されますが、ユーザー名とパスワードを入力しても認証されません。Ahi-hoの場合はCGIプログラムを下記のように変更して下さい。~アカウント/html/xxxx/.htpasswdxxxxは.htpasswdのディレクトリです。時刻が合っていませんQ表示される時刻が合っていません。ACGIでローカル時間を使っていますので、サーバが持っている時計の時刻が表示されます。サーバの時計が合っていない場合があります。海外に設置しているサーバの場合はその現地時刻になり日本の日時と異なります。その場合は、プログラムの8行目に下記を追加して時差を設定します。"JST-9";文字の種類、サイズを変更したいQ表示全体の文字の種類やサイズを変更したいのですが、簡単に設定できますか?A全体の文字の種類やサイズは外部スタイルシートで設定できます。外部スタイルシートは各プログラムファイルの「xxxdata」ディレクトリの中にあります。ファイル名は「style.css」です。11ポイントに指定したい場合は上記ファイルで下記のように指定して下さい。11pt;}リンク、スクロールバーの色を変えたいQリンク、スクロールバーの色を変えたいのですが、どうすればできますか?ACGIで外部スタイルシートを使っていますので、そのファイルを変更すればいいです。ファイル名は「style.css」で各プログラムファイルの「xxxdata」ディレクトリの中にあります。ファイル内容は、こちらを参照して変更して下さい。スタイルシートが効かないQスタイルシートをstyle.cssファイルで記述していますが、その記述がCGIの表示に反映されません。Astyle.cssファイルの呼び出しが正常にできていない可能性があります。原因は下記の場合が考えられます。(1)通常のHPのHTMLディレクトリとCGIを実行するディレクトリが分離されていて、CGIのディレクトリにstyle.cssファイルを置いても呼び出しができない場合。この場合は、style.cssファイルをHTMLディレクトリに置きます。@nifty、WAKWAK、Tripod(2)CGIを実行するURLが通常のHPのURLと異なる場合。BIGLOBE対処は、管理画面で「スタイルシート」又は「画像読出ディレクトリ」を指定できる場合はhttp://のURLを入力します。管理画面で指定できない場合はプログラムを変更してURLを直接指定する必要があります。同じCGIを2個設置したいQ同じCGIを2個設置したいのですが、ファイル名を変更すればいいですか?Aファイル名を変更すると正常に動作しなくなる場合があります。同じCGIを複数設置する場合は、設置するディレクトリを分けて下さい。下記のようにbbs1、bbs2ディレクトリを設けます。すれば、ファイル名を変更する必要がありません。|---bbsdata||---bbs2|---bbs.cgi|---bbsdata日本語の文字化けQ日本語の文字化けが発生します。ACGIプログラムは文字コードがシフトJISで作成され、CGIの実行結果の表示はプログラムでシフトJISを指定しています。スクリプト修正やFTP転送において文字コードを変更していないか確認して下さい。クッキーが効きませんQフレームを使って掲示板を表示しているのですが、クッキーが効きません。Aフレームを使うとクッキーが効かない場合があります。ブラウザがIEの場合に発生するようです。掲示板をフレームから外して全画面で表示させるか新しいウィンドウを開いて使って下さい。ブラウザのクッキーを受け入れる設定を緩和して下さい。IE6の場合は「ツール」→「インターネットオプション」→「プライバシー」で設定できます。