はじめまして。
簡単なアクセス分析のようなものを作っています。
ページの中に<script src="Javascript" ....という
ようなタグを埋め込んで、外部ファイルになっている
Javascriptのプログラムを呼び出し、Javascriptから
IMGタグを作りながら、CGIを呼んで、ファイルに
情報を書き込んでいます。
Javascriptなので、Webのページが開かれるたびに
カウントできると思っていたのですが、戻るボタン
でページが変わったときには、ファイルへの書き込み
ができていないようなのです。
Javascriptのテストプログラムでalertを出して
みたところ、alertは、戻るボタンでページが開かれ
たときにもちゃんと動作しています。
いったい何が原因で、CGIが呼べないんでしょうか・・?
どなたかお助けを・・
No.1ベストアンサー
- 回答日時:
ブラウザのキャッシュが効いてるからだと思うんですが、
呼び出すcgiのURLに、時間やランダムナンバーなど
表示する度に毎回変わるクエリーを付けてみるとどうでしょうか?
access.cgi?07122028
(07122028の部分がJSによって毎回変わる)
すいません。あまり自信はありません。
ご回答ありがとうございます!
でも、今でもCGIを呼び出すときには「?」以下の
部分は毎回変わっていますので、ちょっと当てはまら
ないようです。
(CGIのほうでは'QUERY_STRING'を使って、「?」以下
の部分を毎回見ています)
いったい何がいけないんでしょう・・・?
No.3
- 回答日時:
動作を個々に把握して、
どこで何がどの様に動作して何が何処に残っているのか
きっちりと把握する必要があります。
その様に気になった理由として、
質問文に
>いったい何が原因で、CGIが呼べないんでしょうか・・?
とあり、#1の礼文で
>今でもCGIを呼び出すときには「?」以下の
部分は毎回変わっていますので、
とあり、呼べないといいつつ呼んでいるというのも・・・。
JavaScript 等はブラウザのキャッシュにより再表示の時と同等な動作になっていると思いますが
更新(再描画)の時の検証結果はどの様に動作されているのでしょうか?
あと念の為なのが、CGIのファイルのロック管理ですかねぇ~
現状だとまだ呼べていないのかその先の書き込みがされていないのかの切り分けが出来ていませんし・・・。
ご回答ありがとうございます。
私の書き方が悪くて申し訳ありません。
「CGIを呼んでいます」というのは、「<IMG src=xxxx >という文字列を
Postscriptで生成しています」ということでした。
戻るボタンで戻ったときにも生成はできてるのに、
CGIは実行されていなかったんです。
でも、やっと、原因がわかりました!
最初に回答していただいた2NNさんのご指摘どおりでした。
文字列を生成しているところに深いバグがあって、
戻るボタンのときには、新たな文字列ではなく、以前に
生成した文字列がそのまま使われていたので、結局、
ブラウザのキャッシュのほうの画像が使われていて
CGIが呼ばれていなかったようです。
どうも皆さんお騒がせしてすみませんでした。
No.2
- 回答日時:
そのCGIはご自分で作られたものですか?
CGI内部で同一IPからのアクセスは一定時間記録しないような設定になっているのでは?
ご回答ありがとうございます。。。
CGIは、自作のとっても簡単なものなので、
そんな難しい仕組みにはなってません。。
Postscriptから、
<IMG src=xxxxx.cgi?yyyyyyyy width="0" height="0">
で呼び出されて、中では、
yyyyyyのところを取り出してファイルに書き、
ダミーのgifファイルを画面に書いています。
よろしくお願いします。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- JavaScript JavaScript|特定URLだった時、特定の要素を変更するコードの書き方を教えてほしいです 2 2023/08/25 21:43
- JavaScript JAVASCRIPT 2 2022/04/15 15:10
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript HTMLでJavaScriptを使用してプログラムを作ります。 入力されたパスワードを取得して、パス 2 2022/10/18 01:05
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
自前のアップローダの作り方
-
WEB上で文書のアイコンを配置す...
-
サーバー上のフォルダ削除が出...
-
ApacheでのCGIについての質問
-
カタカナを英語やフランス語に...
-
.htaccessを2つ以上設置した場合
-
SFTPなどは使わないホームペー...
-
Ajax React Jqueryの位置づけと...
-
Perlプログラム上でアラートを表示
-
CGI掲示板のバーミッションにつ...
-
NAMAZUでの文字化け
-
#!/usr/local/bin/perlとしたい
-
ニフティでメールフォームを使...
-
CGIって何ですか?簡潔に教えて...
-
FTPにて553エラー
-
KENT WEBのページカウンタのタ...
-
FC2へのCGIメールフォーム設置
-
クライアントサイドとサーバー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
VBAでサーバーにアクセスするに...
-
VBScriptで、ファイルから任意...
-
JAVAで別サーバーのファイルの...
-
vbでFTPサーバーに対して、サー...
-
C# ファイル削除のエラーコード
-
空のファイル
-
Perl 別ドメインのファイル存在...
-
contenttypeについて
-
input type="file"で複数選択を...
-
CGI_lite.pmを使ったファイルの...
-
FTPでのアップロード後
-
自前のアップローダの作り方
-
WEB上で文書のアイコンを配置す...
-
Webフォルダでサーバーからイン...
-
サーバー上のフォルダ削除が出...
-
URLに~/cgi-bin/~を隠す方法
-
ラジオボタンのグループ化
-
ASPから既存のexcelブックを開...
おすすめ情報