0

Cakephp を使用してアプリケーションを開発しました。セッションはローカル ホストでも正常に動作します。セッションが設定され、localhost で読み取られることがわかります。また、php.ini で定義された sesssion_save_path として作成されたセッション ファイルも確認できます。

まず、共有ホストをテストするための小さなセッション チェック php ファイルを作成しました。共有ホストにセッションの問題がないことを 100% 確信しています。

ただし、セッションは共有ホストでは機能していないようです。セッションを設定できます。ホスト上に作成されたセッション ファイルも表示されますが、更新すると次のようになります。 $this->Session->read("User.id"); $this->Session->check("User.id");

何もない。

私は何をすべきか?Cakephp キャッシュと何か関係がありますか?

4

2 に答える 2

3

まず、私たちは CakePHP の専門家ではないため、最善の答えを提供できない可能性があることをお伝えしておきます。

次のサンプル スクリプト/コントローラーを使用して、共有ホスティング環境で CakePHP 2.2 のセッションをテストしました。

 public function index() {//The default action for a CakePHP controller
    CakeSession::start();

    echo 'Hello world.<hr/>';

    // test that the session actually works
    $counter = 0;
    if ( $this->Session->check('counter') ) {
      $counter = $this->Session->read('counter');
    } else {
      echo 'Creating session' . PHP_EOL;
    }

    ++$counter;

    $this->Session->write('counter', $counter);

    echo "You were here {$counter} time(s)\n\n";
    var_dump($this->Session->read('counter'));
  }

セッションデータが保存され、正常に読み込まれたようです。ICDSoft のサーバーへの CakePHP のインストールにまだ問題がある場合は、サポート チームに連絡することをお勧めします。常に適切なデバッグ サポートを提供できるとは限りませんが、いつでも試してみたいと思っています。

よろしくお願いします、

ICDSoft チーム

于 2012-10-15T10:01:42.063 に答える
0

ブラウザに割り当てられている CakePHP クッキーを見て、セッション ID が変化し続けるかどうかを確認してください。その場合、セッションは永続化されていません。

$_SESSION次に、スーパーグローバルも使用できるかどうかを確認する価値があるかもしれません。

于 2012-10-15T12:38:52.087 に答える