Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

phpMyAdmin「無法創建會話」錯誤快速解決方案

編輯:關於伺服器

錯誤現象

登錄 phpMyAdmin 提示:

phpMyAdmin 錯誤:無法在發生錯誤時創建會話,請檢查 PHP 或網站服務器日志,並正確配置 PHP 安裝。

根因分析

PHP Session 文件殘留導致衝突。常見觸發場景:

  • 直接關閉瀏覽器標籤頁,未點擊「退出」按鈕
  • 多標籤頁操作導致 Session ID 衝突
  • Session 存儲目錄權限異常或磁盤滿
  • PHP 版本升級導致 Session 格式不兼容

快速解決方案

方法一:清理 Session 文件(最直接)


# WDCP 面板環境
cd /www/wdlinux/tmp
rm -f sess_*

# 通用 PHP 環境(根據 php.ini session.save_path 確定)
cd /tmp
rm -f sess_*

# 或指定 PHP 安裝目錄
cd /usr/local/php/tmp
rm -f sess_*

清理後刷新頁面即可正常登錄。

方法二:瀏覽器端清理 Cookie

  1. 按 F12 開啟開發者工具
  2. Application/存儲 → Cookies → 選中 phpMyAdmin 域名
  3. 刪除所有 phpMyAdmin 相關 Cookie
  4. 刷新頁面重新登錄

方法三:修復 Session 目錄權限


# 確認 session.save_path
php -i | grep session.save_path

# 修復權限(假設為 /var/lib/php/session)
chown -R www:www /var/lib/php/session
chmod 770 /var/lib/php/session
# 或根據 PHP-FPM 運行用戶調整

根治預防措施

1. 配置 phpMyAdmin 強制登出清理

編輯 config.inc.php:


$cfg['LoginCookieValidity'] = 3600;        // 1小時自動過期
$cfg['LoginCookieStore'] = 0;              // 不在瀏覽器存儲
$cfg['LogoutRedirectUrl'] = 'index.php';   // 登出跳轉首頁

2. 優化 PHP Session 配置


; php.ini
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.save_handler = files
session.save_path = "/var/lib/php/session"  # 專用目錄,非 /tmp

3. 生產環境建議使用 Redis/Memcached 存儲 Session


; php.ini 或 php-fpm pool
session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379?auth=your_password"
# 或
session.save_handler = memcached
session.save_path = "127.0.0.1:11211"

優勢:多節點共享、自動過期清理、性能更高、避免文件系統 inode 耗盡。

排查檢查清單

檢查項命令/操作正常標準
Session 目錄存在ls -ld /var/lib/php/session目錄存在、屬主 www:www、權限 770
磁盤空間df -h /var/lib/php/session使用率 < 80%
Inode 使用df -i /var/lib/php/session使用率 < 80%
PHP 進程可寫sudo -u www touch /var/lib/php/session/test && rm $_無報錯
session.save_path 配置php -i | grep session.save_path指向正確目錄

總結

「無法創建會話」本質是 Session 文件衝突或存儲異常。清理 sess_* 文件可秒級恢復,配合 Session 存儲遷移至 Redis、優化 GC 策略、規範登出流程,可徹底杜絕復發。生產環境強烈建議棄用文件存儲,轉向分布式 Session 方案。

Copyright © Windows教程網 All Rights Reserved