これは、php_session を保存するパスが正しく設定されていない場合に発生する可能性がある問題です:
セッションを保存するディレクトリが存在しないか、php に書き込み権限がありません。
php_session ディレクトリを定義するには、次の行を php.ini に追加するだけです:
session.save_path="/tmp/php_session/"
そして、http サーバーに書き込み権限を与えます。
通常、http サーバーはグループ デーモン内のユーザー デーモンとして実行されます。その場合は、次のコマンドを実行します:
chown -R :daemon /tmp/php_session
chmod -R g+wr /tmp/php_session
service httpd restart
セッション フォルダが書き込み可能でない場合、ログインに失敗します。それを確認するには、Web ディレクトリに PHP ファイルを作成します。
<?php
$sessionPath = 'undefined';
if (!($sessionPath = ini_get('session.save_path'))) {
$sessionPath = isset($_ENV['TMP']) ? $_ENV['TMP'] : sys_get_temp_dir();
}
if (!is_writeable($sessionPath)) {
echo 'Session directory "'. $sessionPath . '"" is not writeable';
} else {
echo 'Session directory: "' . $sessionPath . '" is writeable';
}
セッション フォルダが書き込み可能でない場合は、どちらかを行います
sudo setfacl -R -m u:www-data:rwx <session directory>
または chmod 777 sudo setfacl -R -m u:www-data:rwx <session directory>
-
私はゲームに遅れていますが、Amazon linux AMI では phpmyadmin にログインできませんでした ... エラーなしでログイン画面を更新し続けました.
以下のコマンドで修正しました
sudo chmod -R 755 /var/lib/php/session