プロが教える店舗&オフィスのセキュリティ対策術

モバイルサイトのCGIを提供していますが、
au 端末には「ブラウザ履歴」として
一度アクセスしたURLは新たな通信を行わず、
メモリに溜めた以前にアクセスしたときの画面を
表示してしまいます。
CGIで、ユーザ入力によって動的に表示結果を
変えることをしているのですが、
通信にいかないので、古い結果を表示されてしまいます。
必ずサーバアクセスにいかせる方法など、
何か対策はありませんでしょうか。

A 回答 (2件)

どういう処理を行うCGIなのか書かれていないのでなんとも言えませんが、入力内容で動的にページを表示するのなら少なくともボタンを押させますよね?



URLが同一であっても読み込みますが、どういう処理をさせているのですか?

この回答への補足

いい加減な質問の仕方ですみません。
フォームからボタンで遷移した場合には
確実に通信にいきます。
リンク(<a href=~)で移動したとき
同じURLだとキャッシュの情報が使われるようです。

サイト内での行動により、
利用者ごとにポイントが増減させるしくみなのですが、
トップページに現在ポイントが表示されていて、
サイトを回遊してポイントに変化があるのに
「トップへ戻る」リンクで、はじめにトップページを
表示させたCGIをコールすると、
通信にいかずに古い情報を表示してしまうのです。
Perl利用ですが、言語の問題ではないと思います。

携帯のCGIを開発されている方なら、
ブラウザ履歴の問題はよく経験されていることだと
思ったのですが。

補足日時:2006/02/03 17:26
    • good
    • 0

キャッシュ関係といったらHTTPヘッダのPragma、Cache-Control、Expiresあたりかな?


携帯だとMETAタグは無視される可能性ありなので、HTTPヘッダとして出力するのがよいかと。
http://www.tohoho-web.com/wwwxx008.htm

あと、ちょっとしたテクニックとしてURLを毎回変更するというのもあります。
たとえば↓みたいに無害なパラメータとしてtimeを仕込むとか。
http://www.***.com/hoge.cgi?1138983203

今回のケースだと「トップへ戻る」のリンクにパラメータを仕込むことになります。
ただし、お気に入りや他サイトのリンクから訪問された場合は考慮する必要があるでしょうね。
この場合は、Locationヘッダで新たなパラメータ付きURLに飛ばせば回避できるかも。

(AUは持ってないので、確認しているわけではありませんけど)
    • good
    • 0
この回答へのお礼

ありがとうございます。
HTTPヘッダはうまくいきませんでした。
#エラーになる

「無害なパラメータ」は面白いアイデアでした。
AUでうまくいきました。
とりあえず、これで対処しようかと…

お気に入りでのアクセスはサーバに読みに行くようです。

ありがとうございました。

お礼日時:2006/02/04 20:27

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