web-dev-qa-db-ja.com

CodeIgniterセッションエラー-リンク解除操作は許可されていません

アプリケーションで発生しているこのCodeIgniterの問題をデバッグしようとしています。私はそれを理解することができないので、誰か他の人がこれに遭遇し、それに光を当てることができるのではないかと思っていましたか?

これは、ユーザーがログインしているときにランダムに発生します。ユーザーがブラウジングしている可能性があり、突然このエラーがポップアップします。ブラウザを更新すると、ブラウザが消えます。

CodeIgniter 3

ありがとう!

A PHP Error was encountered

Severity: Warning

Message: unlink(/tmp/ci_session0189a7f1c86eb18fb70afcfedc2d5040e9c23146): Operation not permitted

Filename: drivers/Session_files_driver.php

Line Number: 346

Backtrace:

File: /home/*****/public_html/application/controllers/User.php
Line: 5
Function: __construct

File: /home/*****/public_html/index.php
Line: 292
Function: require_once
17
Mercy

さらに調査を行った後、問題と答えを見つけました。

config.phpファイルでは、sess_save_pathを有効なパスに設定する必要があります。最初はNULLに設定されていました。私は次のように設定しています:

 $config['sess_save_path'] = BASEPATH . 'cache/';

これで、セッションがこのフォルダに保存され、必要に応じてリンクを解除できます。

37
Mercy

「application/config/config.php」を変更します。

$config['sess_save_path'] = NULL;

に:

 $config['sess_save_path'] = APPPATH . 'cache'; (or another folder)

場所のフォルダ「キャッシュ」は「アプリケーション/キャッシュ」です。

7
Gaalih
change application > config > config.php

$config['sess_save_path'] =  BASEPATH . 'cache/';
6
Pervez

このパスに移動application/config/config.php
これを検索file sess_save_pathそしてこれを置き換えます:

$config['sess_save_path'] = NULL;

次の行で:

$config['sess_save_path'] = BASEPATH . 'cache/';
0
Kaleemullah