でセッションを開始しています
$sess = new Zend_Session_Namespace('MySession');
cookies
セッションは正常に機能しますが、ブラウザで無効にすると問題が発生します。私は大きなアプリケーションを持っているので、クッキーのない環境で動作させるための最良の解決策は何ですか.
でセッションを開始しています
$sess = new Zend_Session_Namespace('MySession');
cookies
セッションは正常に機能しますが、ブラウザで無効にすると問題が発生します。私は大きなアプリケーションを持っているので、クッキーのない環境で動作させるための最良の解決策は何ですか.
Cookieのないブラウザをサポートする代わりに、ログインページにCookieが必要であるという警告を表示できます。最近の多くのWebアプリケーションでは、Cookieを有効にする必要があります。
// make sure cookies are enabled
$.cookie('test_cookie', 'cookie_value', { path: '/' });
if ($.cookie('test_cookie') != 'cookie_value') {
noty({"text":"Cookies must be enabled to log in. <a href='http://support.google.com/accounts/bin/answer.py?hl=en&answer=61416' class='noty_link'>Click here to learn how to enable cookies.</a>","layout":"top","type":"error","textAlign":"center","easing":"swing","animateOpen":{"height":"toggle"},"speed":500,"closable":false, "closeOnSelfOver":false, "timeout":"", "closeOnSelfClick":false});
}
このコードスニペットは、jquery.cookie.js(https://github.com/carhartl/jquery-cookie)とnoty(http://needim.github.com/noty/)プラグインプラグインを使用します
session.use_only_cookies を「0」に設定し、コード内の URL にセッション ID を追加すると、すべてのリンクまたはリダイレクトに「session_id=4b5fe6a4019a8cd7fc4326664e9e03ae」のようなものが URL に追加されます。
このアプローチには多くの問題があります。最大の問題は、ユーザーが URL を共有することを決定した場合、たとえば Facebook で、ブラウザーから URL 全体 (セッション ID を含む) をコピーし、そのリンクをクリックしたすべての人がキャプチャすることです。ユーザーのセッション。
これを見てください。