رفع خطای Unable to establish a PHP session در سرور

خطای Unable to establish a PHP session چیست؟

خطای Unable to establish a PHP session هنگام ورود به کنترل پنل‌های مدیریت سرور (مانند WHM، Webmin یا phpMyAdmin) رخ می‌دهد. این خطا نشان می‌دهد PHP نمی‌تواند فایل‌های session را ایجاد یا بخواند.

دلایل اصلی

۱. مشکل مجوز پوشه session

PHP فایل‌های session را در مسیر خاصی (معمولاً /tmp یا /var/lib/php/session) ذخیره می‌کند. اگر مجوز این پوشه اشتباه باشد، PHP نمی‌تواند فایل session ایجاد کند.

۲. پر بودن فضای دیسک

اگر پارتیشن /tmp یا پارتیشن اصلی پر باشد، فایل‌های session ایجاد نمی‌شوند.

۳. تنظیمات نادرست session.save_path

مسیر ذخیره session در php.ini ممکن است به پوشه‌ای اشاره کند که وجود ندارد.

روش‌های رفع

روش ۱: اصلاح مجوزهای /tmp

chmod 1777 /tmp
chown root:root /tmp

روش ۲: اصلاح پوشه session

# بررسی مسیر session
php -i | grep session.save_path

# ایجاد و تنظیم مجوز
mkdir -p /var/lib/php/session
chmod 1733 /var/lib/php/session
chown root:root /var/lib/php/session

روش ۳: بررسی فضای دیسک

df -h
df -i

هم فضای دیسک و هم inode را بررسی کنید.

روش ۴: پاکسازی فایل‌های session قدیمی

find /tmp -name 'sess_*' -mtime +1 -delete
find /var/lib/php/session -name 'sess_*' -mtime +1 -delete

روش ۵: بررسی SELinux

در سرورهای CentOS/RHEL، SELinux ممکن است مانع نوشتن فایل‌های session شود:

getenforce

اگر Enforcing بود، موقتاً غیرفعال کنید:

setenforce 0

پیشگیری

یک cron job برای پاکسازی خودکار فایل‌های session قدیمی تنظیم کنید. فضای دیسک و inode را مانیتور کنید. تنظیمات session.gc_maxlifetime و session.save_path را در php.ini بررسی نمایید.

اگر سرور مجازی دارید و با مشکلات PHP session مواجه شده‌اید، خدمات کانفیگ سرور میهن هاستینگ تمام تنظیمات PHP و سرور را بهینه می‌کند. هاست وردپرس میهن هاستینگ با PHP بهینه‌شده این مشکلات را ندارد.

⚙️ بهینه‌سازی PHP سرور

تنظیم PHP، رفع خطاهای session و بهینه‌سازی سرور توسط تیم فنی میهن هاستینگ.

سفارش کانفیگ سرور ←

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

متن نظر
نام*:
رایانامه*:
وب سایت / وبلاگ: