@niftyでのカウンター設置の際の画像ファイル

[上に] [前に] [次に]
miyasa_ma [E-Mail] [HomePage] 2000/03/04(土) 22:08:22
@niftyでCGI使用可になったのでカウンターを
設置しようとしたのですが
テスト3でエラーになります
>0.gif〜9.gifがwwwcount.cgiと同じディレクトリに存在しない。
というのが原因の欄にありますが
@niftyでは.cgiや.plは「cgi-bin」ディレクトリに
他のファイル(直接cgiの実行と関係のないファイル .gifとか)は
他のディレクトリに置くことになっているのですが
(私は「homepage」ディレクトリに置いています)
同じディレクトリに置けない場合はどうしたら
表示されるようになるのでしょうか

さやか [E-Mail] [HomePage] 2000/03/05(日) 00:15:18
さやかも@niftyでcgiを使おうとしました。
その時は挫折しましたけど、多分、
> $file_count  = "$count_name" . ".cnt";
> $file_date   = "$count_name" . ".dat";
> $file_access = "$count_name" . ".acc";
> $file_lock   = "lock/$count_name" . ".loc";
の部分を、絶対指定にすれば善いのではないでしょうか。http://からの。
自分は試したことがないのですが、恐らく大丈夫だと思います。
それと、このファイルの場所指定は二カ所あるので、両方とも書き換えるべきだと思います。
駄目だったらごめんなさい。
さやかも試してみます。
http://homepage1.nifty.com/purefall/

もなか 2000/03/05(日) 00:53:25
@niftyはカウンターCGIのようにCGIからgifを呼び出す場合でしたら、
cgi-binにgifを入れてて良かったはずですよ。
試しにcgi-binに画像を置いて設置してみては?

さやか 2000/03/06(月) 01:25:51
色々試してみました。結果は、
cgi-binにカウンタに使う総てのファイルを置いた場合
-> 駄目でした。テストでは正常に動作しているのに、表示がされません。
cgiでgifファイルなどをhomepageディレクトリに置いた場合
-> これは、テストでaccとcntとdatファイルがないと怒られてしまいました。絶対指定は出来ないようです。ごめんなさい。

また試してみます。
何なら、@niftyさんに質問してみるというのも解決方法なのではないでしょうか。

むぅす 2000/03/06(月) 02:40:27
@niftyのディレクトリ構造がどのようになっているかは知りませんが
/usr/home/***/cgi-bin
/usr/home/***/homepage/countlog/
だとしますと

$file_count  = "../homepage/countlog/$count_name" . ".cnt";
$file_date   = "../homepage/countlog/$count_name" . ".dat";
$file_access = "../homepage/countlog/$count_name" . ".acc";
$file_lock   = "../homepage/countlog/$count_name" . ".loc";

push(@files, "../homepage/countlog/$n.gif");

おそらくこれでOKでしょう。
べつに相対パスではなく絶対パスでもよいです。

もなか 2000/03/06(月) 07:56:42
あれえ?
あれから試しにwwwcount.cgiを設置してみましたが、
何の変更箇所も無しで設置できましたが(^^;
どこか変更されてます?
パスも合ってるので、ダウンロードしたままでOKのはずなんですが・・・
(全部をcgi-binに設置)
htmlで呼び出す時は<img src="http://hpcgi1.nifty.com/〜〜">になります。

さだひろ [HomePage] 2000/03/06(月) 09:40:52
わたしも@niftyですが,niftyでは,
HTMLは ftp://ftp1.nifty.com/~xxx/homepage/にアップロードすると
    http://homepage1.nifty.com/hoge/ に置かれ,
CGIは  ftp://ftp1.nifty.com/~xxx/cgi-bin/にアップロードすると
http://hpcgi1.nifty.com/hoge/
(1とhogeは人により違う)

さだひろ 2000/03/06(月) 09:47:06
(↑すみません,途中で[送信]に触れてしまいました.続けて読んで下さい)
置かれるのです.
それでCGIに必要なファイル(画像やテキストのデータファイル)は,/cgi-bin/にいれてください.CGIコードでの指定は相対パスで結構です.
@niftyがなにやら言っていたのは,つまり,http://hpcgi1.nifty.com/hoge/ で呼び出せるのはCGIのみであるから,<img src="http://hpcgi1.nifty.com/hoge/hoe.gif>や,<a href="http://hpcgi1.nifty.com/hoge/hoe.html">などは読み出せないよということです.ブラウザから直接指令して読みこめるのはCGIだけということです.

miyasa_ma [E-Mail] [HomePage] 2000/03/06(月) 21:44:37
[[解決]]
解決しました
gifファイルを/cgi-bin/に置いて実行したところ(さいしょのもなかさんの方法ですね)
表示されました(動いてはいませんが(^^;どっかいじったんでしょう私が)
絶対パスの方法も前に試したのですが
2カ所あるのは知らなかったので
成功しなかったのでしょう

それと @nifyの解説についての解説もありがとうございます

ご意見くださった皆様ありがとうございました

[上に] [前に] [次に]