آموزش رفع مشکل صفحه سفید (مرگ) وردپرس
کد تخفیف در جریان tabestan97 %15 تا آخر تابستان 97

یکی دیگر از مشکلاتی که در وردپرس می تواند گریبانگیر شما شود، مشکل صفحه سفید یا همان صفحه مرگ (Death Page) می باشد. مشکلی که نه خطایی را مشاهده می کنید نه محتوای سایتتان را! تنها یک صفحه سفید خالی! اما این مشکل هم مانند تمامی مشکلات دیگر، یک راه حل دارد.

دلایل بروز این مشکل:

  1. اتمام محدودیت مصرف مموری سرور ( Memory Limit )
  2. استفاده از توابع نادرست در افزونه ها یا قالب ها یا منقضی شدن توابع استفاده شده در نسخه های جدیدتر PHP
  3. مشکل از هاست و سرور
  4. و… !

WordPress White screen Death Page

 


سایت معمولی یا سایت شبکه ای؟

یکی از راه هایی که به حل این مشکل می تواند کمک کند این است که اگر وردپرس شما چند سایته (شبکه) است، بررسی کنید که مشکل صفحه سفید در تمامی سایت های ساخته شده وجود دارد یا تنها در یک سایت؟

اگر مشکل سفید بودن صفحه در تمامی سایت های یک شبکه وجود داشت، به حتم می توان گفت مشکل از سمت هاستینگ شماست! البته در شرایطی که یک افزونه یا قالب در تمامی سایت های شبکه فعال باشد، آن افزونه یا قالب نیز می تواند باعث بروز چنین مشکلی شود. اما اگر مشکل سفید شدن صفحه در یکی از سایت های شبکه وجود داشت، مشکل از سمت افزونه یا قالب درحال استفاده در آن سایت است.

 


افزایش میزان محدودیت مموری سایت

اولین راه حل این است که میزان مموری ( Memory ) مربوط به سایت را افزایش دهیم.

بهترین مکان برای افزایش این مقدار، فایل php.ini است که تعداد زیادی از هاستینگ ها، این فایل را در اختیار شما قرار نمی دهند. اما اگر یک سرور اختصاصی داشته باشید، یا اینکه به کنترل پنل WHM دسترسی داشته باشید، به راحتی می توانید مقدار رم را از طریق فایل php.ini افزایش دهید. اما اگر یک هاست اشتراکی دارید و این فایل را مشاهده نمی کنید، بهترین راه برای شما اضافه کردن کد زیر به فایل wp-config.php واقع در مسیر نصب وردپرس می باشد:

define( 'WP_MEMORY_LIMIT', '256M' );

 


غیرفعال کردن افزونه ها

اگر با افزایش میزان مموری سایت، مشکل رفع نشد، بهتر است به سراغ افزونه ها برویم.

برای اینکار وارد فایل منیجر هاست شده و در پوشه wp-content ، نام پوشه plugins را به plugins0 تغییر دهید! تفاوتی ندارد نام این پوشه را به چه چیزی تغییر می دهید، مهم این است که با این تغییر نام، افزونه ها در سایت غیرفعال می شود.

پس از غیرفعال کردن افزونه ها، سایت را بررسی کنید. اگر مشکل رفع شده بود، پس یکی از افزونه ها باعث دردسر شما شده! در اینصورت در بیاد بیاورید که پیش از بروز این مشکل، چه افزونه ای را نصب یا بروز رسانی کرده اید و آن را حذف کنید. اگر افزونه ضروری است و برای کارایی قالب واجب است، می توانید از نسخه های قبلی آن افزونه استفاده کنید.

یا اینکه از افزونه های مشابه آن استفاده کنید.

 


تغییر قالب سایت از طریق PHPmyAdmin

اگر با انجام مرحله قبلی هم مشکل رفع نشد، به سراغ تغییر قالب می رویم. تغییر دادن قالب بدون دسترسی به پیشخوان کمی دشوار است، اما شدنی! برای اینکار ما یک قالب جایگزین نیاز داریم که قالب های پیش فرض و پکیج شده همراه با فایل وردپرس، بهترین قالب برای آزمایش است. زیرا در کدنویسی آن استانداردها رعایت شده و امکان بروز مشکل در این قالب ها وجود ندارد.

روش انجام کار:

اگر قالب پیش فرض ندارید، آن را از مخزن وردپرس دریافت و در پوشه themes واقع در wp-content بارگذاری کنید.

وارد phpmyadmin هاست خود شده و دیتابیس مربوط به سایتتان را پیدا کنید. اکنون جدول wp_options را باز کنید.

مقادیر template و stylesheet و current_theme را به نام قالب پیش فرض یعنی twentyeleven تغییر دهید و ذخیره کنید. (البته دقت داشته باشید اگر از قالب دیگری استفاده کردید، در قسمت این سه ردیف باید نام قالب خود را وارد کنید.)

 

پس از انجام اینکار (تغییرقالب) ، اگر سایتتان باز شد، مشکل از قالب و کدهای داخل functions.php آن است. اما اگر مشکل همچنان باقی بود، به مرحله بعدی بروید.

 


فعالسازی حالت رفع عیب وردپرس

اگر تاکنون نتوانستید مشکل را حل کنید، بهتر است حالت رفع عیب (Debug) وردپرس را فعال کنیم تا ببینیم مشکل از کجاست. برای اینکار شما باید کد زیر را در فایل wp-config.php وردپرستان اضافه کنید. لطفا دقت داشته باشید که کد خط 2 از قبل در این فایل وجود دارد، تنها باید مقدار آنرا از false به true تغییر دهید. و خط 1 کد زیر را در صورتی که در فایل wp-config.php وجود نداشت، اضافه نمایید.

error_reporting(E_ALL); ini_set('display_errors', 1);
define( 'WP_DEBUG', true);

بعد از ذخیره فایل و انجام تغییرات، سایت خود را باز کنید. به احتمال زیاد اکنون باید خطاهایی در سایت خود مشاهده کنید که می توانید بفهمید مشکل از کجاست. پس از دریافت خطاها، متن آنها را در گوگل جستجو کنید تا بتوانید نحوه رفع آنها را بفهمید!

 


صفحه سفید وردپرس تنها در ادامه مطالب طولانی

گاهی اوقات هم پیش می آید که تنها در ادامه مطلب هایی که متن توضیحات طولانی دارند، صفحه سفید مشاهده می شود. این به دلیل کم بودن مقدار منابع مربوط به Post در سرور شماست.

اگر به WHM دسترسی دارید یا سایتتان در یک سرور اختصاصی بنا شده، کد زیر را در فایل php.ini خود قرار دهید.

ini_set('pcre.recursion_limit',20000000);
ini_set('pcre.backtrack_limit',10000000);

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

 


تغییر نسخه PHP هاست

البته خالی از لطف نیست که بگوییم که نسخه PHP فعال در هاست نیز می تواند باعث بروز چنین مشکلی شود. همانطور که می دانید برخی از توابع عمومی PHP ممکن است به مرور زمان منقضی شوند. اگر افزونه یا قالب شما قدیمی باشد ممکن است در نسخه های جدیدتر PHP به خوبی عمل نکند و باعث بروز این مشکل شود.

ابتدا در بخش مستندات افزونه یا قالبی که جدیدا نصب یا بروزرسانی کرده اید، مطالعه کنید که آن را در چه نسخه ای آزمایش کرده اند. سپس در پنل هاست خود، نسخه PHP را تغییر دهید.

امروزه در اکثر پنل های هاست، شما به راحتی امکان تغییر نسخه PHP را دارید. ممکن است نسخه PHP شما بالا باشد و برخی از توابع استفاده شده مربوط به نسخه های قبل تر باشند، یا اینکه نسخه PHP ما کم بوده و توابع استفاده شده در نسخه های قبلی پشتیبانی نمی شود!

 

شما می توانید با توجه این مستند از مارکت دِومی، در صورتی که چنین مشکلی را رفع کرده اید، در بخش دیدگاه ها اعلام کنید مشکلتان را از چه روشی رفع کردید. ممکن است به دیگران کمک کند!

هنوز دیدگاهی ارسال نشده! نظر شما چیست؟

دیدگاه شما درباره این صفحه چیست؟