- ベストアンサー
CGIカウンタの設置場所
CGIを使ったホームページデビューをしたいと思っているのですが、一つ設計面での重要な問題に突き当たってここに問題を投げかけてみることにしました。 (CGIの際に使う言語はPerlでして、中級者レベルにはなっているという前提でお話しします) まず、アクセスログを残すためにどのCGIの教科書にも載っているアクセスカウンタを設置したいと思っていて、プログラムを書いています。 プログラム自体を作るのは問題ないのですが、ここで一つの大きな壁にぶつかりました。 それは、プロバイダはCGIの使用は許可しているのですが、SSIは許可していないという問題です。 多くの場合、訪問者が最初にアクセスするのはメインページだと思うのですが、これをプロバイダはindex.htmlにするようにしています。しかし、htmlだと静的ページなのでCGIを使うことができません。カウンタは訪問者がメインページに訪問した回数で数えたいのですが、SSIが禁じられているためにこれもできません。 確かに強引に/cgi-bin/main.cgiとして、訪問者にはここにアクセスしてもらうようにしてもいいのですが、URLの見た目として(つまり、美感の問題)として美しくない気がします。 まとめると、SSIの使えない環境にて、index.htmlをメインページとした場合、アクセスカウンタをどのように設置するのが適切か?というのが現在の私の問題です。 (もしくは、解決案はありえないというアドバイスも一つの有益なアドバイスです) カウンタの作り方はどのCGIの教科書にも書いてありますが、設置のためのホームページ全体の設計方法については書いていません。 ですので、経験豊富な方々のいそうなこの場所にて聞いてみることにしました。 自宅サーバーを使えば、こうした制限はないとは思いますが、セキュリティ上の問題が心配でそれをやる勇気がまだありません。サーバー用のマシンを買ってもいいのかもしれませんが、そのための費用もまだ不足しています。 ですので、プロバイダ上での公開という前提でアドバイスをいただければと思います。 何か名案があれば教えてください。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ご質問に対する回答というよりアドバイスですが,何のためにカウンタを 設置したいのかということをよく考えられた方がいいと思います. > 訪問者が最初にアクセスするのはメインページだと思うのですが、 私もホームページを開設していますが,そうでもありません. 確かに開設当初は,プロバイダのホームページ一覧からメインページに来る訪問者が たまにいた程度でしたが,検索エンジンで検索できるようになってからは,ほとんど 検索エンジン経由の訪問者で,メインページ以外の各ページに直接訪れます. そして,そのページ以外は見ずに帰ってしまう人が多いです.(苦笑) したがってメインページではカウントされません. 私はホームページ開設当初から,すべてのページにカウンタとアクセス解析用タグを 設置しています.参考までに現在のカウントを示すと,メインページが約 1,100 なのに 対し,来訪者の多い別の2つのページはそれぞれ約 1,400,約 1,600 となっています. そういうわけで,メインページだけにカウンタを設置しても, ほとんど意味がないと思います. ではどうすればいいのかという話になりますが,それは何のために カウンタを設置したいのかという目的によって変わってくるでしょう. 単に訪問者が多いか少ないかを知って一喜一憂するだけなら, 各ページにカウンタを設置するだけで十分でしょう. しかし訪問者を増やしたいというのが目的であれば,単なるカウンタでは全く不十分です. 訪問者数を調べて,訪問者数の多いページの内容をさらに拡充するにせよ, あるいは訪問者の少ないページをテコ入れするにせよ, どのように改良すればいいかという情報はカウンタからは全く得られません. ホームページ改善のヒントを得るには,カウンタよりもアクセス解析タグを設置 すべきです.これから得られる一番重要な情報は,訪問者がどういう検索語句で 検索して自分のページにやって来たかということだと思います. 検索語句がそのページのテーマに合致していれば,その内容をさらに充実させれば いいわけですし,テーマに近いが現在の内容から少しはずれているということであれば その方向の内容を追加することで訪問者やリピーターを増やすこともできるでしょう. フリーのカウンタやアクセス解析ツールは色々あるようですので, それらを利用するのが一番簡単で効果的だと思います. (なお,これらは訪問者がブラウザの画像表示と JavaScript を OFF にしていると, カウントもされず,アクセスログにも足跡が残りません. したがって上で示した私のホームページのカウントも正確ではなく, 実際はもっと多いはずです.) ┌ちなみに私は,ここのカウンタとアクセス解析タグ, │および Google Analytics を使っています.(いずれも無料) ↓ http://www.ninja.co.jp/
その他の回答 (2)
- miharahiromi
- ベストアンサー率19% (32/168)
カウンターのcgi本体を別に設置してカウンター画像を表示させればいいだけではないでしょうか。 これならindex.htmlでもカウンターが表示されます。 レンタルカウンターも同じ方法です。
補足
ありがとうございます。 まずは試してみたいと思います。
- maura
- ベストアンサー率46% (48/104)
殆どのポータルサイトのトップページは SSIを禁止しています。 レンタルスペースやレンタルサーバーでしたら 使用できる場合もありますが、こういった問題について Perlだけの知識では、なかなか解決案が見えにくいと思います。 SSI禁止の時に使用するカウンタ http://www.kent-web.com/count/dream2.html <img src="/cgi-bin/counter.cgi"> 画像を出力するCGI 上記がオーソドックスな解決案です。
お礼
こういうカウンタもあるのですね。 とりあえず、まだ理解が不十分なのですが、やってみたいと思います。 ありがとうございます。
お礼
非常に丁寧な解説をありがとうございました。 カウンタの目的を考えよということですね。 プロの方々は各ページにそれぞれ設置しているというのも驚きでした。 そこまでは本には書いてありませんでした。 他の方々のホームページ作りの状況がわかっただけでも、質問をした会がありました。