2011-12-31 34 views
0

私はあなたがログインする必要があるウェブサイトを持っています。それはcodeigniterセッションを利用しています。ここでは、コンテキスト内のページです:あなたの問題を示すために http://dancedric.fourthdraft.com/http://www.fourthdraft.com/index.php/frontend/index/dancedriccodeigniterセッションが終了しないときに終了する

、あなたが実際にシステムにログインする必要があります。ユーザーのデモ(引用符なし)をユーザー名とパスワードとして使用します。 2つのリンクをもう一度ロードします。

これらは同じページです。短い方が2番目のリンクにリダイレクトするhtaccessになります。

最初のリンクの右上に表示されている場合は、「ログイン」と表示されます。 2番目のものでは、ログインの代わりにあなたの名前が表示され、既にログインしていることが示されます。

私の問題は、それらは同じページで、そのコーナーにある、if文です。 if($this->session->userdata('xxx'))その後、彼/彼女の名前を表示し、コントロールパネルのリンクを表示します。そうでない場合は、単に「ログイン」を表示してください。

htaccessとmod_rewriteが干渉していて、最初のリンクでセッションを終了しているかどうかわかりません。私はセッションが死んでいるとは思わない。なぜなら、最初のリンクで「ログイン」していても、単に「ログイン」と言ってもそれをクリックするとあなたのコントロールパネルに行くからだ。私は最初のリンクを2番目のように動作させたい。ユーザーがログインしている場合は、彼の名前などは予定通り、それは働いていない何らかの理由で表示さ...

答えて

0

$config['cookie_domain'] = ""; to $config['cookie_domain'] = ".fourthdraft.com";config.php

+0

は機能しません。それは悪化する。私は2番目のリンクでもログアウトします – user657896

+0

こんにちは、私は問題は、他のドメインの外からアクセスできないと思います。例えば、dancedric.fourthdraft.comのwww.fourthdraft.comセッションクッキーにアクセスできません。 多分Cookieドメインを$ config ['cookie_domain'] = "fourthdraft.com"に設定します。 *不足しているドットをメモしてください。 – Artis

+0

試しましたが、うまくいきません。私は本当に本当に助けに感謝します。今何が起こるのですか?私はもうログインできません。それは私の認証スクリプトに到達し、失敗します。 – user657896

0

を設定してみてください私は、同じ問題を抱えていた最後にとても明らかでした、

<ifModule mod_headers.c> 
<filesMatch "\\.(html|htm|php)$"> 
Header set Cache-Control "max-age=1, private, must-revalidate" 
</filesMatch> 
</ifModule> 

は、あなたのセッションは、[OK]を取得します:あなたはあなたの.htaccessファイルの末尾にこれを置く場合は、問題は私のhtaccessファイルでは、私はHTML、CSSなどをキャッシュしました。これは、たとえば次の理由によるものです。

  • あなたはサイトにログインしていて、ログインしていません。しかし、あなたは既にログインしていないユーザーのページビューを提供しています。
  • ログインする。これは、セッションが存在していても、ブラウザに前のページとキャッシュされたページが表示されるためです。ただし、リロードすると正しいページが表示されます。
関連する問題