【Perl】携帯での利用について【CGI】

このQ&Aのポイント
  • Perl言語を使用してCGIを作成し、携帯電話の利用者からの問題報告について説明しています。
  • 携帯電話の利用者がFORMタグでの投稿が反映されないという問題が発生しており、問題解決のためにキャッシュ対策を行っても解決しないとのことです。
  • アクセスログからは、問題が発生したユーザーのアクセス履歴が見つからないため、原因を特定することが難しい状況です。
回答を見る
  • ベストアンサー

【perl】携帯での利用について【cgi】

お世話になっております、ぷりんと申します。 当方、現在Perl言語にてCGIを作成->HTMLにて出力をしてサイト運営を行なっています。 その中で、携帯電話の利用者の一部が、「FORMタグでの投稿が反映されない」との連絡がきました。 その方はSH-01B(ガラケー)を使用しており、携帯電話のブラウザキャッシュの問題かな?と思い「携帯電話の電源を入れなおし、クッキーを有効にしてからお試し下さい」と伝えました。 しかし、現状できないようです。 そこで、キャッシュ対策にHTMLのヘッダに print "<meta http-equiv='pragma' content='no-cache' /> <meta http-equiv='cache-control' content='no-cache' /> <meta http-equiv='expires' content='0' />"; を入力したのですが、残念ながら問題の解決にはなりませんでした。 これはキャッシュが悪さをしているのでしょうか?それとも他になにか原因があるのでしょうか? 言葉足らずかと思いますが、ご教授の程お願い申し上げます。 補足 アクセスログをとっていますが、「投稿が反映されなくなった」と連絡がきた時、その方がアクセスした形跡が見られません。

  • Perl
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • mflow
  • ベストアンサー率63% (42/66)
回答No.2

昔の話ですが、ガラケーのキャッシュが効いていて投稿できない場合はactionタグに"hoge.cgi?random"という風にランダムな引数(時間をつけたりrandで生成したり)をつけて、違うURLとすることでキャッシュを回避していました。最近の端末でもそんなことあるかどうかは変わりませんが…

happypudding
質問者

お礼

お礼が遅くなりまして申し訳ございません。 回答者様の仰るとおり、私も?randomを付けるしかないかなあと思いました。 これからこの問題が頻繁に起きるようでしたら、そう対処していきたいと思います。もうほとんどスマホですけどね(^_^;) ありがとうございました。

その他の回答 (1)

回答No.1

そもそもガラケーってCookie無いような… 掲示板か何かですよね? >「FORMタグでの投稿が反映されない」 >その方がアクセスした形跡が見られません。 ということは、書き込み処理に問題があると思います。というか他になさそうです。 処理を見直すか、そちらをメインにして新しい投稿にしてみては?

happypudding
質問者

お礼

ご回答ありがとうございます。 処理に関してですが、一部の携帯だけが反応ないだけであって、他の携帯やパソコンからは正常に動作いたします。

関連するQ&A

  • MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。

    MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。 今perlを使ってスケジュール管理を作っていますが、IEでは、ちゃんと動作します。HTMLに <HEAD> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> </HEAD> と記述し、キャッシュを無効にしてみたのですが、 どうしてもsafariだと新規でスケジュールを入力したものがカレンダーに反映されません。 これは、HTML記述では、キャッシュを無効に できないのでしょうか? 教えて下さい。

    • ベストアンサー
    • Perl
  • 3日に1回リロードさせたい

    ページの情報を更新したときに、ブラウザのキャッシュの影響でページが更新されないことがあります。 cssが読み込まれていなかったり、htmlの変更が反映されていなかったり、 そのときはF5でリロードさせることで更新を反映させています。 ユーザーが自分でリロードを実行することなく、 自動的に更新させる方法を探しました。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="-1"> この方法だとキャッシュを削除することができ、 複数のブラウザにも対応できるそうですが、 キャッシュを毎回削除してしまうと ページを開く度に重くなってしまいます。 3日に1回、更新させる、ということはできませんか? <meta http-equiv="expires" content="Sat, 15 Nov 2012 12:00:00 GMT"> を <meta http-equiv="expires" content="Sat, 18 Nov 2012 12:00:00 GMT"> <meta http-equiv="expires" content="Sat, 21 Nov 2012 12:00:00 GMT"> のように3日ごとに更新するしかないのでしょうか。

  • URL指定のないHTTP-EQUIV="Refresh"

    稀に以下の様なページが出る事があるのですが、 これはどういう原因で起こるのでしょうか? <HTML> <HEAD> <META HTTP-EQUIV="Refresh" CONTENT="0.1"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Expires" CONTENT="-1"> </HEAD> </HTML> 0.1秒毎にキャッシュ消しながらリフレッシュ、という意味だと思うのですが、サーバー攻撃みたいな事になっていて困っています。

  • ブラウザの戻るができないようにしたい

    ページ内はHTMLファイルですが、そのページのiframe内にperlで動的ページを表示させています。 クリック自体はifream内の動的ページですが、ページのキャッシュが残っているらしく、ブラウザの戻るが有効になります。 戻るができないようにしたいのですが何か良い方法はありますか? 以下、効果はありませんでした。 ファイル1 test.html <html> <head> <title>HTML</title> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Fri, 31 Dec 2004 23:59:59 GMT"> </head> <body> <ifream src="test.cgi"></ifream> </body> </html> ファイル2 test.cgi print "Content-type: text/html\n"; print "Pragma: no-cache\n"; print "Cache-Control: no-cache\n"; print "Expires: Thu, 01 Dec 1994 16:00:00 GMT\n\n"; print <<EOT; <html> <head> <title>CGI</title> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Fri, 31 Dec 2004 23:59:59 GMT"> </head> <body> <a href="test.cgi">sample</a> </body> </html> EOT exit;

    • ベストアンサー
    • Perl
  • 緊急!!広告バナーとキャッシュサーバーの関係

    とても今困っています。 HTML(smarty使用)であるページを作成しています。 ヘッダー部にJavaScriptで新しい広告バナーを貼り付けたのですが、 キャッシュサーバーの関係で、反映されず、以前の広告バナーが出てしまいます。 Ctrl+F5などのページ更新をすれば新しい広告バナーに変わるのですが・・・・・・。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="1"> などもhead部に入れてみましたが、駄目でした。 サーバーの設定ファイルを変更するしかありませんか? 出来れば、他の画像・動画もある為に、あまりキャッシュ機能は外したくありません。 よろしくお願いします。

  • 画像が更新されない

    はじめまして。 ご相談したいことなのですが、 php5 mysql を使用してプログラムを作成しております。 そしてつまずいてしまい2日間解決できずに皆様の力をお借りできればと思います。 フォームを使用し画像を登録するシステムを作っています。 そして画像を変更するシステムを作成しているところで、画像の更新が表示上反映されないのです。 データベース・ティレクトリ内は更新されていて、ページを更新(F5)をするまで画像が反映されないのです。 キャッシュが残っているのかと思い、 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> の記述をしたり 画像を入れているディレクトリに.htaccessを使い Header set Cache-Control "no-cache" Header set Pragma "no-cache" と記述しているのですがまったくダメで困っています。 単純なことかも知れませんがよろしくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLの画像自動更新について

    現在、 <meta http-equiv="Refresh" content="5">で自動更新をしているのですが、 毎回同じ画像が表示されてしまいます。 F5を押すと画像は更新されます。 キャッシュに問題があるのではと調べて下記のように書きました。 <HTML> <HEAD> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Pragma" content="no-cache"> <meta equiv="Expires" content="-1"> <meta http-equiv="Refresh" content="5;URL=index_i_i.html"> URLの「index_i_i.html」は同じHTMLファイル(名前は変えて)を用意して交互に飛ぶように設定しました。 ですが、上記の記述でも同じ画像が表示されます。 F5では更新されるのですが、F5と同じ更新をHTML内に記述するにはどうしたらよろしいのでしょうか? できれば、CGIやスクリプトは使いたくないのですが、使わなくてはいけないのであれば、教えてください。 お願いします。

    • ベストアンサー
    • HTML
  • 画像をキャッシュさせたくない

    CGIで動的に画像を表示するため表示した画像をキャッシュさせたくないのですが、どうすればいいのでしょうか。 他のページなどを参考に <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> をヘッダーに入れてみましたし、リダイレクトしたURLの後ろに無意味なランダム数字を入れても見ましたが、やはりキャッシュされています。 たとえキャッシュされていても無視して読み込むようなヘッダーとか何か確実に新たに読み込む方法はないでしょうか。

    • ベストアンサー
    • HTML
  • アップレットをキャッシュしないようにしたい

    現在、アプレットを開発中ですが、 アップレットがキャッシュされるため、うまくデバッグできません。 <META http-equiv="Pragma" content="no-cache"> <META http-equiv="Expires" content="-1"> は入れているのですが、どうしたらいいでしょうか? ブラウザをいったん閉じないとだめでしょうか? また、JAVAコンソールにsystem.out.printlnの情報がでてこないのですが、 何か設定が必要でしょうか? よろしくおねがいします。。

    • ベストアンサー
    • Java
  • キャッシュ問題

    php,mysqlを使用した動的サイトなのですがdbの内容を更新してページでリロードしても情報が全く変わりません。 おおまかな流れではありますがアクセスの度にdbに接続しselectでデータを取得しています。 ブラウザから一時保存ファイルを消去してリロードしてやっとdbの内容が反映される状況です。 原因は明らかにキャッシュかと思うのですがどうすれば回避することはできますか? htmlには以下のタグを入れているのですが全く効果はないようです・・・ <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Cache-Control" content="no-cache, must-revalidate" /> <meta http-equiv="Expires" content="0" /> htmlの問題かphpの問題か微妙なラインなのですが回避方法としてアドバイス頂けますと幸いです。

    • 締切済み
    • PHP

専門家に質問してみよう