یکی از بدترین حالتهایی که برای سایتهایی که با وردپرس طراحی شده اند پیش می آید حالت صفحه سفید مرگ وردپرس است که در آن کاربر با یک صفحه کاملا سفید بدون هیچ نوع محتوایی مواجه می شود. صفحه سفید مرگ وردپرس یا در اصطلاح wordpress whitescreen of Deathh یا به اختصار wsod ، یکی از رایج ترین خطاهای سایتهای وردپرسی است که در ادامه مقالات ما در حوزه آموزش وردپرس به آن میپردازیم.
در این مقاله به دو موضوع زیر خواهیم پرداخت:
- WordPress White of Death چیست؟
- چگونه مشکل WordPress White of Death را رفع کنیم؟
صفحه سفید مرگ وردپرس چیست؟
WordPress White of Death زمانی رخ میدهد که کاربر با یک صفحه کاملا سفید مواجه میشود. وقتی کاربر با این مشکل روبه رو میشود در مرورگرها مختلف با پیامهای متفاوتی مواجه میشود مثلا در شکل زیر در مرورگر گوگل کروم خطای HTTP 500 به کاربر نمایش داده میشود.
و تصویر زیر در هنگام WordPress White of Death در مرورگر فایرفاکس موزیلا به کاربر نمایش داده میشود که فقط شامل یک صفحه کاملا سفید است و چیزی به کاربر نمایش داده نمیشود. WSoD معمولا به علت خطاهای کد php ، محدودیت حافظه ، وجود یک افزونه معیوب و یا قالب معیوب به وجود می آید. مشکل WSoD به هر علتی که ایجاد شده باشد به سادگی قابل حل است ما در این مقاله 9 راه آسان برای حل این مشکل را به شما معرفی میکنیم.
چگونه مشکل صفحه سفید مرگ وردپرس را رفع کنیم؟
ما در این مقاله برای حل مشکل WordPress White of Death به شما 9 راه حل را بیان میکنیم تا بتوانید در سریعترین زمان ممکن این چالش را حل کنید.
این 9 راه حل شامل موارد زیر است:
- افزونه های وردپرس خود را غیرفعال کنید
- یکی از قالب پیش فرض وردپرس را به عنوان قالب سایت قرار دهید
- کش مرورگر و افزونه وردپرس را پاک کنید
- حالت Debugging را فعال کنید
- محدودیت حافظه خود را افزایش دهید
- تنظیمات مربوط به مجوز دسترسی فایل را بررسی کنید
- مشکلات بهروزرسانی خودکار ناموفق وردپرس را بررسی کنید
- رفع خطاهای نحوی در قطعه کدها یا بازیابی نسخه پشتیبان آن
- قابلیت پردازش متن PHP را افزایش دهید
در ادامه این محتوا هر یک از روش های بالا برای حل مشکل WordPress White of Death را به صورت مجزا توضیح میدهیم.
-
افزونه های وردپرس خود را غیرفعال کنید
یکی از دلایلی احتمالی برای صفحه سفید مرگ وردپرس وجود یک یا چند افزونه معیوب است اگر همچنان به بخش پنل مدیریت وردپرس دسترسی دارید همه افزونه ها را غیرفعال کنید برای این کار کافیست مطابق شکل زیر از بخش افزونه ها ، همه آنها را انتخاب کرده و غیرفعال کنید.
پس از غیرفعال کردن افزونه ها ، اگر مشکل WordPress White of Death حل شد میتوان نتیجه گرفت که مشکل از یکی از افزونه هاست. برای شناسایی افزونه معیوب باید تک تک افزونه ها را فعال کرد و دوباره سایت را بارگذاری کرد اگر با فعال شدن یک افزونه سایت دوباره دچار مشکل شد آن افزونه برای سایت مشکل ساز است و باید برای رفع آن اقدام کرد. برای رفع مشکل افزونه میتوان از توسعه دهنده افزونه یا بخش پشتیبانی سایت مخصوص به آن افزونه کمک گرفت. اگر امکان دسترسی به پنل مدیریت سایت نیست میتوان از FTP استفاده کرد و مطابق شکل زیر در پوشه wp-content نام فایل plugins را تغییر داد
با تغییر نام پوشه plugins ، کامپایلر دیگر نمیتواند پوشه پلاگین ها را شناسایی کند و عملا تمام افزونه ها غیرفعال میشود.
-
یکی از قالب پیش فرض وردپرس را به عنوان قالب سایت قرار دهید
اگر بررسی افزونه ها مطابق مرحله قبل مشکل WSoD حل نشد این احتمال وجود دارد که مشکل از قالب فعال سایت باشد پس قالب وردپرس را به یکی از قالب های پیشفرض تغییر دهید.
برای تغییر قالب در پنل مدیریت وردپرس مطابق شکل از مسیر زیر اقدام کنید:
Appearance > Themes
اگر به پنل مدیریت وردپرس دسترسی ندارید با استفاده از FTP مطابق شکل زیر از مسیر content/themes نام پوشه themes را تغییر دهید.
با تغییر نام پوشه theme یک قالب پیشفرض جایگزین قالب فعلی سایت میشود. اگر با تغییر قالب مشکل WordPress White Screen of Death حل شد پس مشکل در قالب سایت است و باید آن قالب را اصلاح کنید یا یک قالب دیگر را جایگزین آن کنید.
-
کش مرورگر و افزونه وردپرس را پاک کنید
اگر با بررسی دو مرحله قبلی مشخص شد که مشکل صفحه سفید مرگ وردپرس از افزونه ها یا قالب سایت نیست احتمال دارد که مشکل از کش مرورگر یا یکی از افزونه های کش وردپرس باشد پس برای بررسی این حالت کش آنها را پاک کنید.
اگر از یکی از افزونه های کش وردپرس مثل WP Super Cache استفاده میکنید به راحتی مطابق شکل زیر و از مسیر زیر میتوان کش آن را پاک کرد.
Settings > WP Super Cache > Delete Cache
پس از خالی کردن کش با رفرش صفحه سایت ، بررسی کنید که آیا مشکل حل شده است.
-
حالت Debugging وردپرس را فعال کنید
اگر با بررسی سه مرحله قبلی همچنان مشکل WSoD حل نشده بود میتوان از گزینه دیباگ وردپرس استفاده کرد. برای فعال کردن دیباگ وردپرس باید در پوشه wp-config.php در بین فایلهای وردپرس ، خط زیر را پیدا کنید و آن را به حالت true تغییر دهید.
define(‘WP_DEBUG’, false );
اگر این خط وجود نداشت میتوان آن را به ابتدای این فایل اضافه کرد.
با فعال کردن حالت دیباگ ، با رفرش صفحه سایت به جای نمایش یک صفحه سفید خالی ، یک صفحه و چند پیام خطا که بیانگر خطاهای موجود در سایت است مطابق شکل زیر به کاربر نمایش داده میشود:
Cannot redeclare get_posts() (previously declared in
/var/www/html/wordpress/wp-includes/post.php:1874) in
/var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line 38
همانطور که در شکل بالا مشخص است در این مثال مشکل از افزونه my-test-plugin است که با اصلاح و یا غیرفعال کردن آن احتمالا مشکل WSoD حل میشود. اگر بعد از فعال کردن حالت دیباگ ، خطایی نمایش داده نشد ممکن است مشکل از میزبان وب باشد و حالت دیباگ به درستی در سرور پیکربندی نشده باشد که در این حالت باید از بخش پشتیبانی شرکت میزبانی وب کمک گرفت. بعد از اتمام این مرحله حتما حالت دیباگ را غیرفعال کنید زیرا با فعال بودن آن ممکن است برخی اطلاعات سایت در اختیار دیگران قرار بگیرد و این از لحاظ امنیتی مشکل ساز است.
-
محدودیت حافظه خود را افزایش دهید
اگر با اجرای چهار مرحله قبلی مشکل صفحه سفید مرگ وردپرس حل نشده بود احتمال دارد مشکل از کمبود میزان حافظه باشد پس میزان حافظه خود را افزایش دهید.
برای افزایش حافظه میتوان از روشهای زیر عمل کرد:
- قرار دادن کد زیر در فایل wp-config.php:
define(‘WP_MEMORY_LIMIT’, ’64M’);
- قرار دادن کد زیر در فایل htaccess:
php_value memory_limit 64M
- دسترسی به فایل ini از طریق FTP و قرار دادن کد زیر در آن :
memory_limit = 64M
اگر با تخصیص میزان مناسبی از حافظه ، باز هم مشکل کمبود حافظه وجود داشته باشد احتمال دارد مشکل از قالب یا یکی از افزونه ها باشد که حجم زیادی از حافظه را اشغال میکند که برای حل این مشکل میتوانید یک از یک برنامه نویس خبره کمک بگیرید.
-
مجوزهای دسترسی به فایلها را بررسی کنید
یکی از دلایل احتمالی مشکل WordPress White of Death میتواند مشکل مجوزهای دسترسی به فایلها باشد. اگر دسترسی SSH به سرور دارید دستورات زیر را در مسیر روت وردپرس خود اعمال و سپس اجرا کنید:
sudo find . -type f -exec chmod 664 {} +sudo find . -type d -exec chmod 775 {} +sudo chmod 660 wp-config.php
اگر این مرحله کمی برایتان گیج کننده است میتوانید از از یک برنامه نویس خبره و یا بخش پشتیبانی شرکت هاستینگ خود کمک بگیرید.
-
مشکلات به روز رسانی خودکار ناموفق وردپرس را بررسی کنید
یکی از دلایل احتمالی WSoD میتواند مشکل بروزرسانی معیوب وردپرس باشد برای بررسی این مشکل بررسی کنید که اگر فایل maintenance. یا مخفف آن در بین فایلها وجود دارد آن را حذف کنید و سایت را رفرش کنید. اگر بازهم بروزرسانی مشکل داشت می توانید وردپرس را به صورت دستی آپدیت کنید تا مشکل حل شود.
-
رفع خطاهای نحوی در قطعه کدها یا بازیابی نسخه پشتیبان آن
یکی از مواردی که میتواند باعث مشکل صفحه سفید مرگ وردپرس شود این است که در ویرایش کد یکی از فایلهای وردپرس بخشی را اشتباه تایپ کنید. در کل توصیه میشود که به هیچ وجه به صورت دستی کدهای وردپرس را ویرایش نکنید تا به مشکل نخورید ولی در صورت بروز این مشکل میتوان از طریق FTP تغییرات را به حالت پیشفرض برگرداند. اگر همانطور که در مرحله چهارم این مقاله گقته شد حالت دیباگ را فعال کرده باشید پیام خطا میتواند محل دقیق کد معیوب را مشخص کند.
-
قابلیت پردازش متن PHP را افزایش دهید
یکی از مواردی که باعث ایجاد WSoD میشود میتواند طولانی بودن صفحه یا پست باشد در این حالت برای حل مشکل کد زیر را به فایل wp-config.php اضافه کنید:
ini_set(‘pcre.recursion_limit’,20000000);ini_set(‘pcre.backtrack_limit’,10000000);
خلاصه
ما در این مقاله به معرفی مشکل صفحه سفید مرگ وردپرس که یکی از رایج ترین مشکلات در سایت های وردپرسی است پرداختیم و علل این مشکل و راه های حل آن را به شما معرفی کردیم. با اجرای 3 مرحله اول به احتمال زیاد مشکل WordPress White Screen of Death حل میشود و نیازی به بررسی سایر مراحل نیست ولی ما برای تکمیل موضوع محتوا آنها را بیان کردیم. امیدواریم که این محتوا برای شما مفید بوده باشد در پایان اگر هر نوع انتقاد یا پیشنهادی در مورد این مقاله دارید خوشحال میشویم آن را از طریق کانالهای ارتباطی با ما در میان بگذارید.
منبع : wpbeginner.com
مهشید
سلام
من موقع باز کردن پنل مدیریتی به این ارور بر میخورم. نمیدونم چیکارش کنم
/public_html/wp-includes/pluggable.php on line 1228
لطفا راهنماییم کنید
آرش
من اسم پلاگین رو عوض کردم مشکلم حل شد
ولی وقتی افزونه ووکامرس رو فعال میکنم دوباره سایت بالا نمیاد اروو 500 میده !
مشکل از کجاس ؟
m.r.n.f20448 9 سال عضو همیار وردپرس
سلام … خسته نباشید
بنده برای ایجاد اواتار جدید از افزونه ای استفاده میکردم … ولی از وقتی که تصویری با حجم بالایی (70m) رو برای اواتار توسط افزونه بارگزاری کردم بعد از مدت اپلود دیگه صفحه های مدیریت اعم از پیشخوان و … دیگر باز نمی شوند و فقط نوار سمت راست بارگزاری میشه …. ولی سایت کامل لود میشه ولی وقتی وارد مطلبی که به عنوان نمونه نوشته ام می شوم قسمت فوتر سایت و اواتار بنده رو نشون نمیده …. لطفا راهنمایی کنید …… ممنون
en_mehdi69 9 سال عضو همیار وردپرس
سلام
سایت بنده در بعضی از سیستم ها به جای نوشته ها صفحه سفید با اشکال مختلف نمایش داده می شود،
با این توضیح که مشکل از هاست نیست و افزونه کش را هم پاک کردم تغییری حاصل نشد.
ممنون از لطف شما
mili
سلام منم مشکل صفحه سفید دارم دیباگا هم فعال میکنم ارور نمیده ولی تو ارور لوگ که نگاه میکنم همچین خطایی داره
text/x-generic error_log ( ASCII text )
[27-May-2016 10:58:02 UTC] PHP Fatal error: Call to a member function get_rating_html() on a non-object in /home/bksiteir/public_html/milad/wp-content/themes/shop-isle/front-page.php on line 371
محسن 9 سال عضو همیار وردپرس
سلام
من بعد از بارگذاری پوسته قالبی که طراحی کرده بودم، دیگه امکان دسترسی به صفحه پنل مدیریت وردپرس ندارم و صفحه سفید میاد؛
همه راه حل های گفته شده رو هم انجام دادم و به نظر خودم الان حدس میزنم که مشکل باید از قالب باشه
الان نمیدونم چطور این مشکل حل کنم و میخواستم بدونم که موقع طراحی قالب، کدی باید برای لاگین پیج مدیریت تعریف کنم یا نه؟ (چه کدی و در کجا)؟!!
ممنون
محمد امین مجیدی 9 سال عضو همیار وردپرس
سلام
خیر کد خاصی احتیاج نداره و باید کدهای قالب رو بررسی کنید و ببینید کجای کد باگ داره.
برای اینکه مشکل ورود حل بشه به بخش مدیریت فایل هاست به آدرس wp-content > themes و قالبتون رو پیدا کنید یا حذف کنید و یا اسم پوشه قالب رو عوض کنید.
elinahost 9 سال عضو همیار وردپرس
ممنون برای من هم همین مشکل رو داشت ولی الان درست شده!
متشکرم
مهدی
سلام
من برگه هایی که قبلا درست کرده بودم در سایتم، الان نمایش داده نمی شوند حتی پیش نمایش تغییرات را هم که میزنم چیزی نمایش داده نمی شود. می خواستم ببینم شما میدونید مشکل از کجا می باشد. ممنون
بهاره کوهستانی 11 سال عضو همیار وردپرس
سلام
ممکنه سرور شما دان شده بوده و حالا بک آپی که برگردونده شده برای قبل از ساخت برگه ها باشن.
amitisjoon9153 9 سال عضو همیار وردپرس
سلام من دیشب وردپرسم رو به روز کردم و این مشکل در تمام صفحات پنل مدیریتم ایجاد شد هیچ کاری از دست من بر نمی آید
این اواخر هیچ تغییری در سایتم جز به روزرسانی نسخه وردپرس نداشتم. اگر من نسخه قبلی رو داشته باشم چطوری میتونم وردپرس رو به نسخه قبلیش برگردونم از سی پنل؟چه فایل هایی رو باید جایگزین کنم؟
mohammad amin
ممنون.خسته نباشید