WSOD یا White Screen of Death به معنی صفحه سفید مرگ یکی از خطاهای رایج در سیستمهای مدیریت محتوا مانند وردپرس است.وقتی این خطا رخ میدهد، به جای نمایش سایت یا بخش مدیریت، فقط یک صفحه سفید خالی دیده میشود بدون هیچ پیغام خطا یا هشدار مشخصی، که تشخیص علت آن را سخت میکند.
صفحه سفید وردپرس چیست؟
یکی از مشکلات رایج که کاربران وردپرس با آن مواجه میشوند، صفحه سفید است که به آن صفحه سفید مرگ نیز گفته میشود. این مشکل به ویژه پس از نصب افزونهها، بروزرسانی وردپرس یا تغییراتی در کدهای افزونه یا قالب سایت اتفاق می افتد. صفحه سفید وردپرس عموما بدون هیچ پیامی ظاهر میشود و حتی ممکن است نتوانیم وارد پیشخوان وردپرس شویم. در این پست به بررسی علت این خطا و روشهای رفع آن خواهیم پرداخت.
در سطح فنی، WSOD به دلایل زیر اتفاق می افند:
خطاهای PHP مانند سینتکس اشتباه، فراخوانی توابع ناموجود یا مشکلات در کدنویسی قالب یا افزونهها
محدودیت منابع یعنی کم بودن memory limit یا execution time در هاست
تداخل افزونه یا قالب ، نصب یا بهروزرسانی افزونهها یا قالبهایی که با هسته وردپرس یا دیگر افزونهها ناسازگارند.
آپدیت ناقص، بهروزرسانی ناقص وردپرس، قالب یا افزونه که منجر به خراب شدن فایلها شده است. برای همین همیشه توصیه می کنیم قبل از هر گونه بروزرسانی فول بک اپ تهیه و دانلود کنید.
خطای پایگاه داده مثلا اتصال به دیتابیس برقرار نباشد یا queryهای مهم دچار خطا شوند.
به طور خلاصه برای رفع WSOD مراحل روش های زیر می تواند این خطا را رفع کند:
- فعالسازی WP_DEBUG در فایل wp-config.php برای نمایش خطاها
- افزایش memory_limit در php.ini یا از طریق فایل htaccess
- غیرفعالسازی دستی افزونه ها از مسیر wp-content/plugins
- تغییر قالب به قالب پیشفرض از دیتابیس یا مسیر فایلها
- بررسی فایلهای لاگ هاست error_log برای یافتن دلیل دقیق
در ادامه پست بررسی خطای وردپرس به صورت دقیق تر هر کدام ار موارد را بررسی می کنیم.
بررسی دقیق دلایل بروز صفحه سفید وردپرس
چند دلیل میتواند باعث بروز صفحه سفید وردپرس شود که در ادامه این پست به مهم ترین آنها اشاره خواهیم کرد:
1.تداخل افزونهها و قالب
یکی از مهم ترین علت های بروز صفحه سفید وردپرس، افزونهها یا قالبهای مشکل دار و ناسازگار است. اگر شما جدیدا افزونهای نصب کردهاید یا قالب سایت خود را تغییر دادهاید، این احتمال وجود دارد که یکی از این موارد نصب شده با نسخه وردپرس یا با افزونه ها و یا قالب سایت ناسازگار باشد و موجب ایجاد صفحه سفید شود.
همیشه سعی کنید افزونه ها و قالب های اصلی از منابع و سورس مطمئن دانلود و یا خرید کنید و از افزونه های نال شده که مشکلات زیادی را ممکن است برای وب سایت به وجود بیاورند استفاده نکنید.
2. مشکل در فایل wp-config.php
فایل wp-config.php تنظیمات مهم وردپرس سایت از جمله یوزر و دیتابیس و سایر تنظیمات وب سایت را در خود نگه میدارد. اگر این فایل بهدرستی تنظیم نشده باشد یا دچار اشتباه شده باشد، وب سایت شما ممکن است با صفحه سفید مواجه شود.
در برخی وب سایت ها که ویروسی و به کدهای مخرب آلوده شده باشند، کل محتویات این فایل حذف می شود و حجم فایل 0 کیلوبایت می شود. در این طور مواقع باید از یک فایل wp-config.php دیگر از یک وردپرس تهیه و کدهای آن را وارد و ذخیره کرد و مجدد اطلاعات دیتابیس و اگر تنظیمات دیگری مورد نیاز بود در این فایل وارد و ذخیره کرد .
3. خطا در فایل htaccess
فایل htaccess یکی از فایلهای مهم پیکربندی سایت است که تنظیمات مربوط به مسیریابی URLها و سایر ویژگیها است ، هرگونه مشکل یا خطا در این فایل میتواند باعث بروز صفحه سفید شود.
یکی از این موارد، افزونه های امنیتی هستند که کدهایی را به فایل htaccess اضافه می کنند. در برخی موارد، این کدها به دلیل تداخل و یا مشکلات دیگر، باعث از دسترس خارج شدن وب سایت می شود.
4. خطا در منابع هاست(Memory Limits)
گاهی مواقع منابع هاست شامل سی پی یو و رم ، برای اجرای افزونه ها و قالب وب سایت کافی نیست. اگر مقدار حافظه PHP کمتر از حد مورد نیاز باشد، ممکن است وردپرس نتواند بهدرستی اجرا شود و صفحه سفید به نمایش در آید.
به خصوص وب سایت هایی که افزونه های صفحه ساز مثل المنتور و المنتور پرو دارند در مقایسه با سایر وب سایت های وردپرسی نیاز به منابع بیشتری دارند. اگر شما هاست وردپرسی دارید و نیاز به منابع بیشتری دارید، می توانید منابع پلن های مختلف هاست پربازدید و یا هاست حرفه ای را مشاهده کنید و هر پلنی که مد نظر شماست را در تیکت ارسال کنید تا بعد از بررسی همکاران بخش فنی، هاست شما به سرویس قوی تری منتقل شود.
5. اشکال در کدهای قالب یا افزونهها
اگر شما یا برنامه نویس شما، بهطور دستی تغییراتی در کدهای قالب یا افزونهها ایجاد کرده باشند و این تغییرات با خطا مواجه شدهاند، ممکن است سایت شما به صورت صفحه سفید نمایش داده شود.
6. مشکل در بروزرسانی وردپرس
گاهی مواقع، بروزرسانی وردپرس به درستی انجام نمیشود. این مشکلات ممکن است به طور مستقیم با افزونهها، قالبها یا فایلهای وردپرس درگیر باشد که باعث بروز صفحه سفید میشود. برای همین همیشه توصیه و پیشنهاد می شود که از هاست خود در وضعیت پایدار، فول بک آپ تهیه و دانلود کنید. (آموزش تهیه فول بک آپ)
روشهای رفع مشکل صفحه سفید وردپرس
تا اینجای پست، با علت های بروز خطای صفحه سفید آشنا شدیم، در این بخش به روشهای مختلف برای رفع این مشکل میپردازیم:
1. غیرفعال کردن افزونهها
یکی از اولین اقداماتی که باید انجام دهیم، غیرفعال کردن تمامی افزونهها است. برای این کار وارد سی پنل خود می شویم و در فایل منیجر سی پنل، به پوشه wp-content می رویم.
سپس فولدر plugins را پیدا کرده و نام آن را به plugins-old تغییر می دهیم، حالا به وب سایت را در مرورگر باز می کنیم. اگر صفحه سفید ناپدید شد، مشکل از یکی از افزونهها می باشد.
سپس به بخش افزونهها در پیشخوان وردپرس می رویم و به ترتیب افزونهها را فعال کنید تا افزونه مشکلساز شناسایی شود.
2. بررسی و اصلاح فایل wp-config.php
در برخی مواقع، تنظیمات اشتباه در فایل wp-config.php باعث بروز صفحه سفید میشود. برای رفع این مشکل، این فایل را محیط ادیتور سی پنل باز کرده و خط زیر را در آن اضافه کنید:
define('WP_DEBUG', true);
این کار باعث میشود که خطاهای PHP نمایش داده شوند و شما بتوانید مشکل را شناسایی کنید.
در پست دیگر در پارس وب سرور به بررسی خطاهای وردپرس و روش رفع آن پرداختیم که برای کسب اطلاعات بیشتر می توانید آن پست را مشاهده کنید.
3. اصلاح فایل htaccess
اگر خطا در فایل htaccess باشد، باید این فایل را باز کنیم و آن را به حالت پیشفرض برگردانیم. برای این کار به فولدر وب سایت خود می رویم و فایل .htaccess را پیدا کرده و آن را حذف کنید (قبل از این کار از آن یک نسخه پشتیبان تهیه کنید).
وارد پیشخوان وردپرس شوید و به بخش تنظیمات و سپس پیوندهای یکتا می رویم و کبار روی ذخیره تغییرات کلیک می کنیم تا فایل htaccess دوباره ایجاد شود.
4. افزایش محدودیت حافظه PHP
برای افزایش محدودیت حافظه PHP، باید مقدار memory_limit را در فایل wp-config.php تغییر می دهیم.
define('WP_MEMORY_LIMIT', '2048M');
این تغییر به وردپرس اجازه میدهد تا از حافظه بیشتری استفاده کند و اگر مشکل مربوط به رم پایین برای اسکریپت های php باشد، مشکل صفحه سفید برطرف می شود.
5. بروزرسانی یا نصب مجدد وردپرس
اگر هیچیک از روشهای گفته شده بالا نتیجه نداد، ممکن است مجبور شویم وردپرس را بهطور کامل بروزرسانی یا مجددا نصب کنیم. قبل از انجام این کار، از سایت خود یک نسخه فول بک آپ کامل تهیه و دانلود کنید.
صفحه سفید وردپرس میتواند به دلایل مختلفی از جمله افزونهها، قالبها، مشکلات سرور و یا خطاهای کد بروز کند. با استفاده از روشهایی مانند غیرفعال کردن افزونهها، اصلاح فایلهای پیکربندی، افزایش حافظه PHP و بروزرسانی وردپرس، میتوان این مشکل را رفع کرد. همیشه بهتر است که قبل از انجام هرگونه تغییر در سایت خود، از آن نسخه پشتیبان تهیه کنید تا در صورت بروز مشکلات بیشتر، بتوانید به راحتی به حالت قبلی بازگردید.
در این پست به بررسی دلایل خطای صفحه سفید وردپرس پرداختیم، اگر در وب سایت وردپرسی خود با این خطا مواجه شدید تیکت بزنید تا همکاران ما وب سایت شما را بررسی کنند(ارسال درخواست پشتیبانی)