CGI初心者の者です。
ブラウザの戻るボタンには、それまでに閲覧した
サイトの履歴がありますがこれらを消去すること
はCGIでできますか?
もしかしたらCGIではなく、JAVAスクリプト
で実現可能なのでしょうか?
要はHPの閲覧者が今までたどってきたサイトに
行けなくするようにしたいのですが、できるので
しょうか?
どうぞよろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

artist0さん、shinya_y001さんと同感です。



この様なことを行って、どのような利益があるのでしょうか?
戻るボタンを使って、今まで見てきたページに戻っている人には、
大いに不満があります。
(使っていない人は、気付かれないかもしれませんが)
多くの人から、抗議のメール等が飛んでくると思います。
本当に、大事にしなければ行けない「リピータ」は居なくなると思います。

また、ブラウザの方でもこの様な命令はサポートしていないと思います。
せっかく作った「戻るボタン」の意味がありませんから。

ページ毎にキャッシュ制御による、表示制限は行えます。
しかし、本来の目的は「常に最新の表示を行う」為です。
    • good
    • 0

shinya_y001さんのおっしゃるとうりです。


これははっきりいって迷惑行為です。
こんなことしたら、うったえられます。
アクセス数も減ります。
    • good
    • 0

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

このQ&Aと関連する良く見られている質問

Qホームページ訪問者の閲覧時間を知りたいです。CGI等で可能?

自分のサイトの訪問者が各ページを何秒見ているか知りたいです。詳細はわからなくても10秒未満or以上とかならPerl等で判明しないだろうかと考えています。お詳しい方、よろしくお願いいたします。

*ちなみに関数sleep(10);で10秒後に動くPerlを考えましたが、まるで10秒間そのページをダウンロードし続けているかのような挙動になってしまいNGでした…

Aベストアンサー

Java Script をなどつかって
onLoadとonUnloadをつかい読みこんだ時間を記憶して
ページを切り替えた時間の差でわかると思うのでが

Q#exec cgi="**.cgi"をCGIページで表示する

#exec cgi="**.cgi"
を使って、全ページが同じように表示されるようにしたのですが、
掲示板等のCGIページではなぜか表示されず、ソースを見てみると
<!--#exec cgi="**.cgi"-->
がそのまま表示され、ただコメントとして扱われていました。
普通のHTMLファイルと同じように
CGIでも**.cgiファイルを表示したいのですが、どうすればいいのでしょうか

よろしくお願いします。

Aベストアンサー

CGIの中でしたら
include
または
require
で呼び出せばいいかと思います。

QCGIからCGIを、CGI環境変数付きで実行するには?

CGI(Perl)からCGI(Perl)を実行してその出力を得るには
どうしたら良いでしょうか。

そのCGIがもっている環境変数(IPアドレスとか、POSTデータ)も
渡したいのですが・・・。

Openでパイプを使ってやればいいとまではわかり、
環境変数などを渡さないで純粋にCGIを実行させて
その出力を受け取るところまでは出来ました。

Aベストアンサー

Openでパイプを使って起動した子プロセスには、環境変数は全てコピーされるはずです。 どの変数が消えたり変ったりしてますか?


> 環境変数(IPアドレスとか、POSTデータ)

CGIパラメーターが環境変数として渡されるのは GETメソッドの場合です。 (GETメソッドの場合、URL上でも xxxx?a=1&b=2 の様にパラメーターを表現できます)

POSTメソッドの CGIパラメーターは、STDIN から入力します。 だから、これを子プロセスに引き継ぐには、それなりの工夫が必要です。

工夫というと、例えば以下のいずれかです。

・ 親が STDIN を読む前に子プロセスを起動する。

・ 親は入力した STDIN を記憶しておき、子プロセスの起動後に記憶内容をパイプで渡す。 子プロセスの STDOUT を親がパイプで読みたいなら、さらに面倒。 (パイプ指定の open() だけでは STDIN/STDOUT 両方のパイプは多分不可)

いずれの場合も、CGI.pm なんかを親が使うとまずいかも知れません。

Openでパイプを使って起動した子プロセスには、環境変数は全てコピーされるはずです。 どの変数が消えたり変ったりしてますか?


> 環境変数(IPアドレスとか、POSTデータ)

CGIパラメーターが環境変数として渡されるのは GETメソッドの場合です。 (GETメソッドの場合、URL上でも xxxx?a=1&b=2 の様にパラメーターを表現できます)

POSTメソッドの CGIパラメーターは、STDIN から入力します。 だから、これを子プロセスに引き継ぐには、それなりの工夫が必要です。

工夫というと、例えば以下のいずれかで...続きを読む

Q掲示板などのCGIでモード別機能の実現

ちょっと違うのですが、機能が似ているので掲示板を例にしてお尋ねします。
ユーザモードと管理者モードがあって、例えば、ユーザは新規登録と閲覧だけ、管理者はそれに加えて、削除や編集ができるとします。

問題は、この管理者モードになってから、削除や修正や、色々な機能があるのですが、それを切り替えるたびにモードを引数で渡して自分自身をコールしているのですが、どうも動作が途中で管理者モードから外れてしまいます。

CGIコールをせずに、サブルーチン的に内部で機能を呼べば良いのですが、CGIコールでもうまくいく方法は無いものかと考えています。

簡単に考えれば、管理者として「ログイン中」というフラグを持ちまわることができれば良いと思いますが、それはどうしたら良いでしょう?
変数に入れてもコールするたびに初期化されるし、ファイルに落とすのも芸が無いし・・・
何か良い方法は無いでしょうか?

Aベストアンサー

グッスリ眠って頭スッキリ。出ました。(笑)
こんなのでどうでしょう。

if ($login) {
  print "<INPUT TYPE=\"hidden\" NAME=\"login\" VALUE=\"1\">";
}

GET なら
if ($login) {
  print "<A HREF=\"abc.cgi?login=1\">";
} else {
  print "<A HREF=\"abc.cgi\">";
}

これでOKだとおもいますので、ご確認ください。
う~ん、なんて単純な。

Qa.cgi経由で、b.cgi実行

a.cgiからLOCATIONで、b.cgiを実行したいのですが、
1つ条件がありまして、b.cgiを実行する場合は必ず
a.cgi経由出なければいけないというチェックをしたいのです。

LOCATIONを使用した場合、環境変数「HTTP_REFERER」に値がセットされないみたいなのでNGでした。

またパラメータを持たせるにしても、LOCATIONはGETしか使えないので、アドレスを見ればばればれになってしまいNGです。

何かいい方法はないでしょうか?
よろしくお願いします。

Aベストアンサー

セッション管理というやつですね。

a.cgi
セッションIDを生成(ランダムに)。
生成したID(+作成日時とか)をファイルに保存
b.cgiに遷移 Location b.cgi?セッションID

b.cgi でセッションIDが正しい(存在する)かチェックします。

→参考URL
http://www.atmarkit.co.jp/fsecurity/rensai/webhole03/webhole01.html
http://www.dab.hi-ho.ne.jp/sasa/biboroku/perl/session.html

参考URL:http://www.atmarkit.co.jp/fsecurity/rensai/webhole03/webhole01.html


おすすめ情報