訪問者が一度に1つのWebページだけを表示できるシステムを設定したいと思います。 ブラウザウィンドウまたはタブは1つだけ許可する必要があります。ユーザを追跡し、複数のウィンドウ/タブをphp/javascriptで無効にする
"is_viewing"というセッション変数を実装しました。それが本当であれば、人はページへのアクセスが拒否されます(単純に別のテンプレートを表示することによって)。
ユーザがあるページから別のページにナビゲートする場合、このセッション変数をリセットする最も良い方法は何ですか?
htmlボディのonunloadイベントにajax関数を追加しました。それがするすべては、セッション変数をfalseに設定します。
しかし、これはあらゆる種類のトラブルや予期しない結果をもたらします。 ページをリフレッシュすると、拒否テンプレートが表示されます(何らかの理由でセッション変数がtrueと表示されます)、別のリフレッシュ後にページを再度ロードできます。
ajaxで呼び出されたスクリプトでヘッダーを扱うことはできませんか? セッション変数をリセットして、別のページを既に表示している場合にユーザーがアクセスを拒否するサイト上でどこを追跡していますか?
なぜこれをやりたいですか?ユーザーが実際に複数のウィンドウやタブを表示したい場合、Javascriptを無効にすることができます。 –
私はライブビデオフィードでいくつかのページを持っています。一度に複数のページを閲覧するのを防ぐ必要があります。 JavaScriptをオフにすると、動画は表示されません。だから、サイトはjavascriptでしか使えないので、JavaScriptをオフにしている人たちについては心配する必要はありません。 – user478419
ipごとに1つのストリームのみを許可するか、ストリーミング時にチェックしたクッキーを設定し、1つのクッキーIDごとに1つのストリームしか許可しないでください。 – Rahly