ブラウザでphpMyAdminを指定すると、次のエラーが表示されます
エラーなしでセッションを開始することはできません。PHPおよび/またはWebサーバーのログファイルで指定されたエラーを確認し、PHPインストールを適切に構成してください。
私はすべてをチェックしましたが、問題が何であるかを理解できないようです。
私のphp.iniファイルには次のものがあります:
session.save_path = "/var/lib/php/session"
許可:
drwxr-xr-x 2 root Apache 4096 Feb 16 04:47 session
何も機能しないようです。セッションディレクトリのアクセス許可を777に変更します。
通常、問題はブラウザ側にあります。
ブラウザのキャッシュをフラッシュし、サーバー/ホストのCookieを削除してから、phpMyAdminの読み込みを再試行する必要があります。
すべて外出したい場合は、サーバー上のセッションフォルダーもクリアします。
考えられる理由の1つは、ブラウザーとWebサーバー間の セッションデータの不一致 が原因で、必要なセッション情報を取得できず、このエラーダイアログを膝の上にダンプすることです。
問題は、ファイルとフォルダーのアクセス許可が原因である可能性があります。フォルダーのアクセス許可を変更してみてください。
Sudo chmod 777 /var/lib/php/session/
これにより、PHPセッションフォルダーに完全な読み取り/書き込み権限が設定されます。
注:php/session/
フォルダーは、サーバーによっては異なる場所にある場合があります。セッションパスのphp.ini
を確認してください。
私の場合、/var/lib/php/session
の所有権が間違っていました。これをApacheユーザーとグループ(Webサーバーを実行するユーザーとグループ)に変更しましたが、すべて順調でした。
session.save_path
にphp.ini
を設定します。既存のディレクトリを使用していることを確認してください。
それでも問題が見つかった場合は、そのフォルダーを使用するユーザーにそのフォルダーへの書き込みと実行の許可を与えます。[これはIISの場合に特に使用されます]
このエラーには2つの一般的な原因があるようです。1つはサーバー構成とsession.save_pathに関連し、もう1つはブラウザーのキャッシュです。
このエラーが発生した場合は、サーバー上のApacheおよびPHP構成を変更する前に、別のブラウザーまたはマシンを使用してみてください!
サーバーのCookieをクリアするだけでは十分ではないことに注意してください。キャッシュをクリアする必要があります。
Firefoxでは、すべての履歴とCookieをクリアするのは簡単ですが、すべてを削除したくない場合があります。キャッシュをクリアすると、Firefoxに隠されます:
ツール>オプション>詳細設定>ネットワーク:キャッシュされたWebコンテンツ-今すぐクリア
777
!(私のような)nginxを使用する場合は、/var/lib/php/
の下のフォルダーの所有権を変更するだけですApache
からnginx
へ:
[root@centos ~]# cd /var/lib/php/
[root@centos php]# ll
total 12
drwxrwx---. 2 root Apache 4096 Jan 30 16:23 opcache
drwxrwx---. 2 root Apache 4096 Feb 5 20:56 session
drwxrwx---. 2 root Apache 4096 Jan 30 16:23 wsdlcache
[root@centos php]# chown -R :nginx opcache/
[root@centos php]# chown -R :nginx session/
[root@centos php]# chown -R :nginx wsdlcache/
[root@centos php]# ll
total 12
drwxrwx---. 2 root nginx 4096 Jan 30 16:23 opcache
drwxrwx---. 2 root nginx 4096 Feb 5 20:56 session
drwxrwx---. 2 root nginx 4096 Jan 30 16:23 wsdlcache
また、/var/lib/phpMyAdmin/
の下のフォルダーの場合:
[root@centos php]# cd /var/lib/phpMyAdmin
[root@centos phpMyAdmin]# ll
total 12
drwxr-x---. 2 Apache apache 4096 Dec 23 20:29 config
drwxr-x---. 2 Apache apache 4096 Dec 23 20:29 save
drwxr-x---. 2 Apache apache 4096 Dec 23 20:29 upload
[root@centos phpMyAdmin]# chown -R nginx:nginx config/
[root@centos phpMyAdmin]# chown -R nginx:nginx save/
[root@centos phpMyAdmin]# chown -R nginx:nginx upload/
[root@centos phpMyAdmin]# ll
total 12
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 config
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 save
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 upload
セッションフォルダーが書き込み可能でない場合、ログインは失敗します。それを確認するには、次のように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 <session directory>
-
OK、
私はWindows 7 UltimateとWAMP 2.4サーバーを使用しています。tmpフォルダーが欠落していたため、作成しました。これで問題が解決しました。 php.iniファイルで正しいパスを確認してください:session.save_path
Xamppの場合、「ルート」フォルダーから一時ハエを削除するとうまくいきます。
TH
このスレッドが解決済みとしてマークされていることを知ると、特定の用語のGoogle検索で早期に表示されます。そのため、このエラーにつながる可能性のある別の理由に言及することが役立つと思いました。
「セーフ/セキュアCookie」を有効にした場合は、phpMyAdminを有効にすると機能しないため、phpMyAdminに対して無効にする必要があります。したがって、次のようなものがないことを確認してください。
Header set Set-Cookie HttpOnly;Secure
あなたの設定で。
私は丸一日、この同じ問題に取り組みました。私にとっての答えは、ブラウザのキャッシュを単純にクリアすることでした。残念なことに、すでにwebserver/phpmyadminを3回再インストールしていました。 :(
Windows Server 2016で見つかった問題は、PHPが使用する一時ディレクトリのアクセス許可が間違っていたことです。 IUSRを追加しました。
問題は、session.save_handler
に間違ったphp.ini
値があることでもあります。 memcached
に変更するとこのエラーが発生し、files
に戻すと再びエラーになりました。
最初:session
dirでない場合(私の場合はそうでした)
Sudo mkdir /var/lib/php/session
2番目:session
dirの特権を設定します
Sudo chmod 777 /var/lib/php/session
これは、無効なセッションキーが原因である場合があります。 XAMPPを使用している場合、私のために働いたのは、XAMPP xampp/tempでtempフォルダを開き、sess_で始まるセッションファイルを削除することでした
ブラウザのキャッシュをクリアしました。 phpinfo.phpにリストされているセッションフォルダーを作成しました。
動いた !