戻るボタン、BackSpaceの制御

戻るボタンやBackSpaceで前のページに戻るのを制御する方法を調べてみました。
根本的な対策はセッションや引数をつかってサーバーサイドでやらなくちゃいけないようですが、クライアントサイドでもある程度はできるようです。まずはこれ。

キャッシュを制御する方式
http://blog.knockoutmarch.com/2008/02/06/2323.html

キャッシュさせなければ、前のページに戻っても再送信しないとページが表示されなくなります。
まあ結局はサーバーサイドでリロードの制御をしなくちゃならないので、あくまで予備的な対応って感じでしょうか。


次はかなり強引なやり方。

history.forward(1)
http://note.area93.net/it/?p=28

「メニュー」「ツールバー」非表示、右クリック不可、さらにhistory.forward(1)。
ものすごい強引ですが、確かに要件は満たしています。

でも、これだけやってもJavaScriptをオフにしたらスルーされちゃうんで、やはり素直にサーバーサイドで実装するのが良さそうですね。