
خطای صفحه سفیدِ مرگ یا همان “یک خطای مهم در این وبسایت رخ داد”، یکی از رایجترین خطاهای وردپرس میباشد. همچنین این خطا یکی از آزاردهندهترین خطاها نیز میباشد، زیرا که در این حالت علاوهبر این که هیچ پیامی به شما نمایش داده نمیشود و تنها صفحهای سفید روبهرویتان قرار میگیرد از وردپرس نیز خارج میشوید.
یکی دیگر از مشکلاتی که خطای صفحه سفیدِ مرگ به همراه دارد این است که گاهی اوقات تنها بخشهایی از وبسایت شما را تحت تاثیر قرار میدهد.
به عنوان مثال، ممکن است این خطا را تنها در هنگام ورود به صفحه مدیریت وردپرس مشاهده کنید و این در حالی است که تمام بخشهای دیگر به خوبی کار میکنند. در موارد دیگری ممکن است تنها اثر این خطا را بر روی پستهایی خاص مشاهده کنید اما تمام قسمتهای دیگر به خوبی در حال اجرا باشند.
در این مطلب ما با بررسی کردن راهحلهای گوناگون به شما آموزش میدهیم که چگونه خطای صفحه سفید مرگ را رفع کنید.
نکته: قبل از این که هر گونه تغییری را در وبسایتتان ایجاد کنید، مطمئن شوید که از فایلهای وبسایتتان پشتیبان تهیه کردهاید.
چرا خطای صفحه سفید مرگ در وردپرس رخ میدهد؟
در اکثر موارد زمانی که شما با این خطا مواجه میشوید، دلیلش این است که صفحه موجود در وبسایت وردپرس شما، بازه حافظهای خود را مصرف کردهاند.
کدهایی که از کار افتادهاند، توسط سرور تامینکننده وردپرس شما متوقف میشوند یا اینکه زمان حیاتشان به اتمام میرسد (Timeout). به همین دلیل است که در هنگام رخ دادن خطای صفحه سفید مرگ در وردپرس، هیچگونه متنی به شما نمایش داده نمیشود و تنها صفحهای سفید دیده میشود.
گاهی اوقات ممکن است به جای صفحه سفید، پیام خطای مهم به شما نمایش داده شود.
فرقی نمیکند که صفحهای سفید به شما نمایش داده شود، یا پیام «یک خطای مهم در این وب سایت وجود داشت. لطفاً صندوق ایمیل مدیر سایت را برای دستورالعمل بررسی نمایید.»، هر دو این خطاها یکی هستند.
یکی دیگر از علتهای این خطا میتواند کدنویسی ضعیف یکی از افزونهها یا قالبهای نصب شده بر روی وبسایتتان باشد.
برخی مواقع هم مشکل میتواند سرور هاستی باشد که وبسایت شما در آن قرار دارد. از آن جایی که خطای صفحه سفید میتواند علتهای گوناگونی داشته باشد، پس باید به روشی هوشمند و دقیق عیبیابی را انجام داد و خطا را رفع کرد.
آیا این مشکل در دیگر وبسایتهای شما هم رخ میدهد؟
اگر در همان سرور هاستی که در حال استفاده از آن هستید، وبسایتهای دیگر نیز دارید، پس بهتر است که آنها را هم بررسی کنید و ببینید که آیا این مشکل در آنها هم وجود دارد یا خیر. اگر آنها هم این مشکل را دارند، پس میتوان به احتمال زیاد گفت که مشکل از سرور هاستی است که سایت شما در آن قرار دارد.
این میتواند مشکلی موقتی باشد که در سرورهای آنها رخ داده است و شما باید برای دریافت اطلاعات بیشتر و کمکهای مورد نیاز با آنها تماس بگیرید.
اما اگر این خطا تنها در یک وبسایت یا بخشی از وبسایتتان رخ داده است، پس میتوانید نتیجه بگیرید که علت مشکل در وبسایت شما است.
رفع خطای صفحه سفید با استفاده از حالت بازیابی یا ریکاوریِ وردپرس
اگر علت خطای صحفه سفید مرگ در وردپرس یکی از قالبها یا افزونههای شما باشد، پس وردپرس میتواند این خطا را شناسایی و رفع کند.
در نسخه ۵.۲ وردپرس ویژگی محافظت از خطاهای مخرب اضافه شده است و به همین خاطر ممکن است گاهیاوقات حتی این خطا برای شما اتفاق نیفتد. به جای آن پیامی به شما نمایش داده میشود که عبارت زیر را نمایش میدهد:
یک خطای مهم در این وب سایت رخ داده است.
همچنین ایمیلی به آدرس ایمیل ادمین شما ارسال میشود با این مضمون که:
از وردپرس ۵.۲ ویژگیهای درونی برای تشخیص اینکه چه موقع یک افزونه یا پوسته در سایت شما دچار خطای مهلک شد، و با این ایمیل خودکار به شما اطلاع دهد، وجود دارد.
در متن پیامی که برای شما ایمیل میشود، افزونههای که باعث بروز مشکل شده است معرفی میشود و لینک مخصوصی در خود خواهد داشت. این لینک به شما اجازه میدهد که وارد حالت ریکاوری وردپرس شوید و آن افزونهای را که باعث بروز خطا شده است، غیر فعال کنید.
اگر خطای صفحه سفید مرگ ورپرس برای شما اتفاق افتاده است اما ایمیلی به شما برای ورود به حالت ریکاوری ارسال نشده است، باید به صورت دستی این خطا را رفع کنید.
افزایش سقف محدودیتهای حافظهای
معمولا این خطا زمانی رخ میدهد که صفحه موجود محدودیت حافظهاش را مصرف کرده است و برای همین فعالیت در وسط کار متوقف میشود. برای رفع این حالت، باید حافظه PHP را که در دسترس وردپرس است، افزایش دهید. با این کار صفحه یا سندی که در حال اجرا است، حافظه بیشتری در اختیار خواهد داشت تا بتواند تکلیفی را که بر عهدهاش است، کامل کند. برای کسب اطلاعات بیشتر در این زمینه میتوانید به مطلب ما راجع اینکه چگونه میتوان حافظه PHP وردپرس را افزایش داد، مراجعه کنید.
برای افزایش حافظه، کد زیر را در فایل wp-config.php اضافه کنید:
define( 'WP_MEMORY_LIMIT', '256M' );
غیرفعال کردن تمامی افزونهها
اگر افزایش سقف حافظه مشکل شما را حل نکرد یا اینکه سقف حافظهای شما از قبل بالا است، مانند ۲۵۶ مگابایات یا ۵۱۲، باید شروع به عیبیابی کنید.
طبق تجاربی که ما از عیبیابیهای این خطا به دست آوردهایم، همیشه به این نکته رسیدهایم که مشکل یا از افزونههای خاص است یا قالبی خاص. پس شروع کنید و تمامی افزونهها را غیرفعال کنید. اگر به صفحه مدیریت وردپرس دسترسی دارید، پس به آدرس افزونهها >> افزونههای نصب شده بروید. در این بخش باید تمامی افزونههای نصب شده را انتخاب کنید و از منوی کشویی «کارهای دسته جمعی» گزینه «غیرفعال کردن» را انتخاب کنید.
اما اگر به صفحه مدیریت وردپرستان دسترسی ندارید، پس باید از طریق FTP تمام افزونههایتان را غیر فعال کنید.
ابتدا از طریق FTP Client به وبسایت وردپرس خود متصل شوید (مانند برنامه FileZilla). در مرحله بعد پوشه wp-content بروید. تمامی افزونههای نصب شده توسط شما در این پوشه قرار دارد.
در این مرحله باید بر روی پوشه plugins راست کلیک کنید و نام آن را تغییر دهید. میتوانید اسم این پوشه را به «plugins-deactivated» عوض کنید.
اکنون FTP Client نام پوشه را برای شما تغییر خواهد داد.
وردپرس برای اینکه بتواند تمامی افزونههای شما را فعال کند، باید به پوشهای به نام «Plugins» دسترسی داشته باشد. اگر نتواند که چنین پوشهای با این نام پیدا کند، بهسادگی تمام افزونهها را غیرفعال خواهد کرد.
اگر این راه حل مشکل شما را حل کرد، پس افزونههایتان را یکی یکی فعال کنید تا متوجه شوید که مشکل از کدام افزونه بوده است.
زمانی که متوجه شدید که افزونه مشکلزا کدام است، میتوانید آن را با افزونهای دیگر جایگزین کرده یا اینکه با سازندگان آن تماس بگیرید.
جایگزینی قالب با قالب پیشفرض
اگر عیبیابی از طریق افزونهها مشکل شما را حل نکرد، پس باید به دنبال این باشید که قالب نصب شده را به قالب پیش فرض وردپرس تغییر بدهید.
ابتدا از طریق FTP Client به وبسایتتان متصل شوید و سپس به آدرس wp-content/themes بروید. در این پوشه تمامی قالبهای نصب شده توسط شما وجود دارند.
بر روی قالبی که در حال حاضر بر روی وبسایت شما فعال است و سایر قالبهای غیرپیشفرض، کلیک راست کنید و آن را به منظور تهیه نسخه پشتیبان دانلود کنید.
در قدم بعدی باید قالب فعلی و قالبهای غیرپیشفرض وبسایتتان را حذف کنید. بر روی پوشه قالب راست کلیک کنید و دکمه «Delete» کلیک کنید. در این مرحله FTP Client این قالب را برای شما حذف میکند.
در این بخش اگر شما قالب وردپرس پیشفرضی مانند 2020 یا 2021 نصب کرده باشید، وردپرس به طور خودکار این قالب را به قالب پیش فرض در نظر گرفته و شروع به استفاده از آن میکند.
اگر قالبی به چز قالب وبسایتتان ندارید، ابتدا باید قالب پیشفرض وردپرس را به پوشه wp-content/themes آپلود کنید.
اگر با این راه حل مشکلتان حل شد، باید به فایل «functions.php» قالبهایتان نگاهی بیندازید. اگر در قسمت پایینی فایل فضایی اضافی وجود دارد، باید آن را حذف کنید، بعضی اوقات این حرکت مشکل شما را حل میکند.
اگر در فایل «function.php» قالب شما کدنویسی عملکردها ضعیف صورت گرفته است، ممکن است خطای صفحه سفید مرگ وردپرس برایتان رخ بدهد.
در این حالت به دنبال نسخهای تازه از قالبتان باشید که بعد از دانلودش از منبع، آن را به جای نسخه قدیمی نصب کنید.
فعالسازی حالت «Debug Mode»
اگر هیچکدام از راه حلهای بیان شده تا به اینجا مشکلتان را حل نکرده، قدم بعدی این است که حالت Debugging وردپرس را فعال کنید.
این روش به شما کمک میکند تا بفهمید که چه نوع خطاهایی در حال رخ دادن هستند.
برای این کار، بهسادگی کد زیر را به فایل wp-config.php اضافه کنید:
define( 'WP_DEBUG', true); define( 'WP_DEBUG_LOG', true );
وقتی که شما این کدها را اضافه کردید، در صفحه سفید سابق، متنها و خطاها ظاهر خواهند شد. این هشدارها و اطلاعیهها شاید به شما کمک کند تا بتوانید منشا مشکل را پیدا کنید.
اگر که شما هیچ خطایی را نمیبینید بهتر است که بخش گزارشهای اشکالزدایی یا Debug Log را بررسی کنید. میتوانید بهسادگی از طریق FTP Client به پوشه wp-content وارد شوید. در این پوشه شما فایلی با نام debug.log خواهید یافت که متن تمامی خطاها و اطلاعیهها و هشدارها را در بر دارد.
پاک کردن حافظه کش[1] وردپرس
گاهی اوقات ممکن است که شما به کدهای منبع و پشت پرده وبسایتتان دسترسی داشته باشید، اما خطایی که مشاهده میکنید تنها در ظاهر سایت مشخص باشد. این اتفاق میتواند به دلیل حافظه کش افزونهها رخ دهد. راه حل این است که حافظه کش را پاک کنید.
[1] Cache
حل کردن خطاها در صفحات بلند
اگر خطای صفحه سفید مرگ بر روی یک صفحه بلند یا مطلبی طولانی ظاهر شده است، ترفند زیر ممکن است به کمکتان بیاید.
کاری که این ترفند انجام میدهد اساسا این است که از طریق افزایش دامنه حد بازگشت، ظرفیت پردازش متن را در PHP بالا میبرد. میتوانید کد زیر را در فایل «wp-config.php» قرار دهید:
ini_set('pcre.recursion_limit',20000000); ini_set('pcre.backtrack_limit',10000000);
ما متوجه هستیم که این خطا میتواند اعصاب خردکن و آزاردهنده باشد و امیدواریم که راهحلهای گفته شده بتوانند مشکل شما را حل کنند.
سوالات متداول
خیر. یکی ازبزرگترین نگرانیهای افرادی که با این خطا مواجه میشوند، نگرانی بابت از دست دادن اطلاعات وردپرس است. ولی نگران نباشید درنهایت همه اطلاعات حفظ خواهند شد.
بله. با مطالعه این آموزش میتوانید به راحتی این خطا را برطرف کنید و نیازی به استخدام افراد متخصص نیست.
بله. شایع ترین علت بروز این خطا همان افزونه و قالبها هستند.
بله. ماهیت این دو خطا یکی است و نحوه رفع آنها با دستورالعمل یکسان صورت میگیرد.
برای مطلع شدن از آخرین اخبار و آموزشهای وردپرس میتوانید صفحه اینستاگرام ما را به نشانی wpvar دنبال کنید.
خبرنامه وردپرس فارسی
برای باخبر شدن از آخرین آموزش های رایگان و اخبار وردپرس، با وارد کردن ایمیل خود عضو خبرنامه ما شوید
با موفقیت مشترک شدید!