重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

自分のサイトでアップしている圧縮ファイルのダウンロード数を
知りたいためフリーのダウンロードカウンタ(CGI)を設置したいと
思っているのですが、どうしても根本的な事からわかってないようで
途中でつまづいてしまいます。
サーバーはCGI設置可能でサイトはhtmlを書いてFTPで転送して
います。
特にファイルの置いてあるhtml側の書き換えがよくわからず困ってます。
よく例としてあがっているアドレスに"*****"となっていたり
しますがそこは自分のサイトのファイルのフルパス?を入力すれば
いいんでしょうか?

A 回答 (2件)

以下は、あるアクセスカウンタをダウンロードカウンタとして使用した場合です



<a href="count/count.cgi?mode=download;target=../aaa.lzh">aaa.lzh</a>

count/count.cgiはcgiのパスで、
?以降はcgiに渡すパラメータです。
この場合は、modeをdownloadとすることでダウンロードカウンタとして使用する(本来の目的はアクセスカウンタ)ことを示し、そしてそのファイル名はtargetで与えています。また、この場合は[;](セミコロン)でパラメータを分けていますが、普通は[&]で分けます。

このようにcgiは、
<a href="[cgiのパス]?[パラメータ1]&[パラメータ2]&[パラメータ3]・・・">文字</a>
という形で使用します。

これにより、ダウンロードする側は今までと同じ感覚でリンクをクリックし、それは自然とcgiを経由することになります。また、管理者は別のcgiを直接アドレスに打ち込んで表示させることで、集計が見れるようになります。

分かりにくい説明ですが、これをふまえてもう一度説明を見てみてください。
    • good
    • 0
この回答へのお礼

返事ありがとうございます。
なるほど!

>?以降はcgiに渡すパラメータ
>[&]で分けます。

この二つだけでもかなり力になりました。
今まで説明の例をそのまま分からないままコピペしていたので
CGIの置いてある説明部に書いてあるタグの説明もさっぱりだったの
ですがhtmlを書いて指定していく意味では同じなんですね。

今やってみたらうまくいきました!ありがとうございました!

お礼日時:2007/01/20 23:32

その*****となっている部分の、もう少し広い範囲を教えていただけませんか?



CGIの設置で大切なのは、
○#!/usr/local/bin/perl の部分を、サーバに合わせて書き換える
○cgi,plファイル、使用ディレクトリのパーミッションの設定
○フリーのcgiを公開している方の説明による、使用者毎の変更箇所
    • good
    • 0
この回答へのお礼

返事ありがとうございます。
補足としてダウンロードカウンタは管理側からしか見れないように
したいんです。

>○#!/usr/local/bin/perl の部分を、サーバに合わせて書き換える
これもサーバのパス通りに記述しています。

パーミッションもFFFTPの方からアップロードした後に属性変更で
しています(数字だけ変更)

一番つまづくのは大概どのダウンロードカウンタ(CGI)の説明でも
最後の辺りに書かれている、html側のダウンロードする箇所の書き換え
なんです。(htmlファイルの設定)
その部分に大概は
<a href="/*****/~~~~/~.lzh">Download</a>
みたいな感じで記入してくださいとなっていて、その"*****"は
それまでのダウンロードファイルのフルパス?を書くのかなと
思ってたのですが。

説明通りにやってるつもりなのですが実際ダウンロードカウンタと
いうのは設置するとダウンロードする側も一度CGIを経由(何かしらの
ページが開くなど)するのか、それとも全く今までと変わらず管理側
だけが集計ページをパスワード入力すると見れるのか、とかそれも疑問でして。

お礼日時:2007/01/20 03:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!