هیچ چیز بدتر از این نیست که صفحهای از سایت وردپرسی خود را در مرورگر باز کنید و با هیچ مواجه شوید! یک هیچ مطلق سفید در مازیلا فایر فاکس و یک هیچ سفید و یک خط نوشته در مرورگر گوگل کروم. بد ماجرا اینجاست که این خطا نه تنها باعث میشود سایت برای مدیران و بازدیدکنندگان غیرقابل دسترس باشد، بلکه هیچ اطلاعاتی هم از علت یا روش برطرفسازی مشکل در اختیارمان نمیگذارد تا خیالمان کمی راحت شود. بنابراین کاملاً قابلدرک است که چرا به خطای صفحه سفید وردپرس، مرگ سفید میگویند.
خطای صفحه سفید وردپرس چیست؟
اگر صفحهای از سایت شما در مرورگرهای Chromeو FireFox به شکل زیر نمایش داده میشود، جا دارد به شما تسلیت بگوییم! وردپرس شما دچار مرگ سفید شدهاست:
ممکن است فقط صفحهٔ خاصی از سایت شما دچار این مشکل شده باشد و تمام صفحات دیگر به درستی کارکنند. یا اصلاً فقط صفحهٔ مدیریت وردپرس دچار اختلال شده باشد. در هر صورت ما ۹ راهکار ثابت شده برای رهایی از این مشکل برایتان داریم.
توجه: پیش از هر اقدامی در راستای برطرف کردن مشکل صفحه سفید وردپرس، حواستان باشد که بک آپ تهیه کنید. اگر به بخش مدیریت دسترسی ندارید بهتر است مقالاتی که دربارهٔ روشهای مختلف بکآپ گیری از کنترل پنل منتشر کردهایم را مطالعه کنید.
مقاله شماره یک: آموزش بکاپگیری با افزونه Jetbackup
مقاله شماره دو: آموزش بکاپ گیری از محصولات ووکامرس و بازگردانی آن به زبان ساده!
در صورتی که پیش از بکآپگیری اقدامات زیر را انجام دهید، احتمال دارد بخشی یا تمام اطلاعات سایتتان را از دست بدهید.
چرا با خطای صفحه سفید در وردپرس مواجه میشویم؟
از آن جایی که طیف گستردهای از عوامل میتوانند باعث بروز این مشکل شوند، عیبیابی خطای صفحه سفید وردپرس که آن را به اختصار WSOD مینامیم، کمی دشوار است. اما اکثر مواقع این خطا یا ناشی از مشکلات دیتابیس است یا حاصل اشتباه در مدیریت حافظه.
مثلاً ممکن است افزونهای را نصب کرده باشید که مدتهاست بهروزرسانی نشدهاست و کدهای افزونه با کدهای نسخههای جدیدتر وردپرس، سازگاری نداشته باشد وباعث بروز این اختلال شده باشند. به همین دلیل است که همواره تاکید میکنیم موقع نصب افزونهها و قالبها حتماً به تاریخ بهروزرسانیها توجه کنید.
از طرف دیگر اسکریپتهایی که محدودیت حافظه را رد کردهاند نیز میتوانند مشکلساز باشند. اسکریپت بدون پاسخ، بعد از مدتی یا توسط هاست از بین میرود یا خیلی ساده زمانش تمام میشود. به همین دلیل هیچ پیام خطای واقعی ایجاد نمیشود و یک صفحه سفید ساده را مشاهده می کنید.
خب، حالا نوبت آن است که ببینید آیا واقعاً خطایی که با آن روبهرو هستید خطای صفحه سفید وردپرس است یا نه. در ادامه این مطلب را بررسی میکنیم.
آیا سایتهای دیگرتان هم دچار مرگ سفید وردپرس شدهاند؟
اگر سایتهای وردپرسی دیگری (به جز سایتی که در حال بررسی خطا آن هستید) را روی همان هاست نصب کردهاید، باید بررسی کنید و ببینید آیا وبسایتهای دیگرتان هم دچار خطای صفحه سفید وردپرس شدهاند یا خیر؟ اگر این طور است به احتمال قوی، مشکل از سرویس هاستینگ شماست! شاید مشکلی موقتی خدمات آنها را تحتتاثیر قرار داده و شاید هم کار خرابتر از این حرفهاست. در هر صورت با تیم پشتیبانی تماس بگیرید و از آنها بخواهید مشکل را برایتان برطرف کنند.
اما اگر مشکل فقط در یکی از سایتهایتان اتفاق افتاده است، زحمت برطرف کردنش با خودتان و ماست! فکر میکنم احتمالش نزدیک به صفر باشد که پس از امتحان کردن ۹ روش زیر هنوز با خطای صفحه سفید وردپرس درگیر باشید.
۹ روش برطرف کردن خطای صفحه سفید مرگ وردپرس
توصیه میکنیم روشهای زیر را یکی یکی بررسی کنید و اگر پس از انجام هر مرحله مشکل رفع نشد سراغ راهحل بعدی بروید. آستینها را بالا بزنید، وقت بررسی و رفع خطاست.
۱. افزونههای عامل خطای صفحه سفید وردپرس را غیرفعال کنید
یک راهحل ساده و دم دستی این است که تمام افزونههایتان را غیرفعال کنید چون عموماً ریتم به روزرسانی نامنظم یکی از افزونهها باعث خطای صفحه سفید وردپرس شده است. راه سریع برای انجام این کار این است که از داشبورد وارد بخش Plugins شوید، همه افزونهها را انتخاب کنید و سپس از منوی کشویی Bulk Actions روی Deactivate کلیک کنید:
اگر بعد از غیرفعال کردن تمام افزونهها مشکل حل شده بود حالا باید پیدا کنید پرتقال فروش را! یعنی دوباره یکییکی افزونههایتان را نصب کنید و هی سایت را بررسی کنید تا ببینید این دسته گل را کدام افزونه به آب داده است. سپس با پشتیبانی افزونه تماس بگیرید یا تیکت بزنید تا مشکل را برایتان حل کنند.
چهطور بدون ورود به پنل وردپرس افزونهها را غیرفعال کنیم؟
اگر نمیتوانید وارد ادمین پنل سامانه مدیریتمحتوا وردپرس شوید، میتوانید از یک کلاینت پروتکل انتقال فایل (FTP) برای دسترسی به فهرست فایلهای سایت خود استفاده کنید.
در پوشه wp-content دایرکتوری اصلی خود، پوشه plugins را پیدا کنید. نام آن را مثلاً به “plugins_old” تغییر دهید:
سپس، سایت خود را مجدداً در فرانت اند بررسی کنید. اگر خطای صفحه سفید وردپرس حل شد باید افزونهها را تک به تک تست کنید. نام پوشه پلاگینها را دوباره به “plugins” تغییر دهید و سپس به صورت جداگانه نام پوشهٔ هر افزونه که در این دایرکتوری قرار میگیرد را تغییر دهید تا پوشهٔ معیوب را پیدا کنید.
۲. به قالب پیشفرض وردپرس بروید
اگر مشکل از افزونهها نبود، باید برویم سراغ متهم ردیف دوم یعنی قالب! برای این که گناهکار یا بیگناهی این متهم اثبات شود باید ببریدش دادگاه. یعنی قالب فعلی را غیرفعال کنید و به قالب پیشفرض وردپرس برگردید. اگر به بخش مدیریت خود دسترسی دارید، از داشبورد سامانه مدیریت محتوا وردپرس به مسیر Appearance > Themes بروید. یک قالب پیشفرض وردپرس مثل Twenty Twenty را پیدا و فعال کنید. اگر قالب دیگری ندارید، میتوانید یکی را از فهرست قالب وردپرس دانلود کنید و سپس آن را در پوشه قالبها آپلود کنید:
اگر نمیتوانید به داشبورد خود دسترسی پیدا کنید، دوباره باید مثل روشی که برای افزونهها استفاده کردیم عمل کنید. یعنی از FTP برای دسترسی به فایلهای سایت خود استفاده کنید و نام پوشه wp-content/themes را به چیز دیگری تغییر دهید.
اگر خطای صفحه سفید وردپرس حل شد که یعنی کار کار قالب بوده و دچار کانفلیکت یا مشکل در به روزرسانی شدهاست. در این صورت بایستی با توسعهدهنده فولاستک خود تماس بگیرید و قالب را عوض کنید. یک تیکت جانانه هم به تولیدکننده قالب بزنید و بابت مشکلی که بهروزرسانی نکردنهایش برای سایتتان ایجاد کرده، تشکر در خوری به صلاح دید خودتان بکنید!
۳. کش مرورگر و افزونهها را پاک کنید
اگر به پشتیبان سایت وردپرسی خود دسترسی دارید اما هنوز خطای WSoD را در فرانتاند مشاهده میکنید، باید به مشکل حافظه پنهان و کشینگ شک کنید. برای رفع این مشکل کش مرورگر و افزونه کشینگ وردپرس (در صورت وجود) را حذف کنید.
بیشتر افزونههای کشینگ مثل WP Rocket یا WP Super Cache راه سریع پاک کردن کش را در صفحه تنظیمات افزونه ارائه میدهند که معمولاً از این مسیر است:
Settings > نام افزونه کشینگ > Delete Cache
اگر پس از این روش مشکل حل شد که خب از همراهی شما خوشوقت شدیم. اگر نه تشریفتان را بیاورید گزینهی بعدی، تا روش دیباگ را بررسی کنیم!
هاست وردپرس لیموهاست
شروع قیمت از
۱۳۹ هزار تومان
پیشنهاد میکنیم مطالعه کنید: «راهنمای جامع برطرف کردن خطاهای وردپرس»
۴. حالت Debugging را روشن کنید
اگر همچنان صفحه سفید مرگ وردپرس را میبینید، قسمت مدیریت کار نمیکند، یا فکر میکنید مشکل را پیدا کردهاید اما میخواهید کمی عمقیتر وارد ماجرا شوید آستینها را بالا بزنید و حالت دیباگ یا عیبیابی را فعال کنید. این حالت هر نوع خطایی که در پیدا و پنهان سایتتان اتفاق افتاده را روی دایره میریزد.
برای فعال کردن دیباگ، باید فایل wp-config.php نصب سامانه مدیریت محتوا خود را باز کنید و در آن خط زیر را پیدا کنید:
define( 'WP_DEBUG', false );
“false” را به “true” تغییر دهید و سپس سایت خود را مجدداً بارگذاری کنید. اگر این خط وجود نداشت، میتوانید آن را به بالای فایل اضافه کنید.
بعد از این مرحله به جای صفحه سفید، یک صفحه سفید و چند پیام خطا دریافت خواهید کرد. پیشرفت بزرگی نیست، اما شروع خوبی است! حالا پیام خطای WSoD باید نشان دهد که مشکل از کدام فایل شروع شده است، مثلاً:
Cannot redeclare get_posts() (previously declared in
/var/www/html/wordpress/wp-includes/post.php:۱۸۷۴) in
/var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line ۳۸
در انتهای این ارور میبینید که مشکل در خط ۳۸ افزونهای به نام my-test-plugin است. بنابراین، غیرفعال کردن افزونه باید مشکل را حل کند. اگر بعد از فعال کردن حالت دیباگ اصلاً خطایی مشاهده نکردید، با پشتیبانی هاستینگ خود تماس بگیرید، ممکن است دیباگ به درستی در سرور شما پیکربندی نشده باشد. اگر با خطای شکایت از محدودیت حافظه یا حافظه خالی مواجه شدید به سراغ مرحله بعد بروید.
۵. محدودیت حافظه را افزایش دهید
اگر پس از پیمودن تمام مراحل بالا هنوز سایه کذایی صفحه سفید روی سایتتان هست احتمالاً باید اعصابتان خرد شده باشد. پس اول یک لیوان آب بخورید و بروید سراغ مسیر زیر تا حافظهٔ بیشتری را به برنامه اختصاص دهید.
فایل wp-config.php را باز کنید و درست قبل از خط /* That’s all, stop editing! Happy blogging. */ کد زیر را اضافه کنید:
define('WP_MEMORY_LIMIT', '۶۴M');
اگر این کد برایتان کار نکرد، در یک محیط معمولی میتوانید از فایل htaccess خود برای افزایش محدودیت حافظه استفاده کنید و خط زیر را اضافه کنید:
php_value memory_limit ۶۴M
اگر نمیتوانید به فایل htaccess. دسترسی پیدا کنید، میتوانید از فایل php.ini برای افزایش محدودیت حافظه استفاده کنید. برای انجام این کار، از طریق FTP به سرور خود متصل شوید. در پوشه اصلی سایت به دنبال فایل php.ini بگردید. هنگامی که آن را پیدا کردید، خط زیر را در هر جای فایل اضافه کنید:
memory_limit = ۶۴M
اگر هنوز حافظه شما کم است و نیاز به تخصیص بیشتر دارید، ممکن است مشکلی در برنامه شما وجود داشته باشد. شاید یکی از افزونهها یا بخشهای سایت شما استفاده بیش از حدی از منابع دارد. در این مرحله، باید به فکر کمک گرفتن از یک توسعهدهنده باشید. حتی هاست شما ممکن است بتواند با نشان دادن گزارش های SQL و سایر آمار منابع برای سایت به شما کمک کند.
۶.File Permission Issues را بررسی کنید
حالا یکی یکی داریم میرویم سراغ دلایل کمتر رایج خطای صفحه سفید وردپرس که یکی از آنها مسائل مربوط به مجوز و مالکیت است. خودتان هم میتوانید این مشکل را برطرف کنید. اما فقط در صورتی توصیه میکنیم که خودتان شخصاً به رفع مشکل بپردازید که دقیقاً به مساله اجهاف داشته باشید و بدانید چه میکنید. در غیر این صورت، احتمالش زیاد است که به طور ناخواسته آسیبپذیریهایی در سایتتان ایجاد کنید و راه حملات امنیتی را باز کنید.
وقتی صحبت از مجوزهای سامانه مدیریت محتوا وردپرس میشود، سه قانون ساده وجود دارد که باید دنبال کنید:
- فایلها باید روی ۶۶۴ یا ۶۴۴ تنظیم شوند.
- پوشهها باید روی ۷۷۵ یا ۷۵۵ تنظیم شوند.
- فایل wp-config.php باید روی ۶۶۰، ۶۰۰ یا ۶۴۴ تنظیم شود.
اگر به سرور خود دسترسی SSH دارید، میتوانید قوانین مناسب را با دستور زیر اعمال کنید و آن را از دایرکتوری ریشه وردپرس اجرا کنید:
sudo find . -type f -exec chmod ۶۶۴ {} +
sudo find . -type d -exec chmod ۷۷۵ {} +
sudo chmod ۶۶۰ wp-config.php
اگر حس میکنید سر سوزنی شک یا مشکل در انجام این کار دارید حتما با پشتیبانی هاست خود تماس بگیرید و از آنها راهنمایی بخواهید.
۷.مشکلات بهروزرسانی خودکار ناموفق را بررسی کنید
گاهیاوقات وردپرس به دلایلی مثل تمام شدن زمان تایم اوت سرور، دچار مشکل بهروزرسانی میشود. اولین کاری که باید انجام دهید این است که به دایرکتوری ریشه سامانه مدیریت محتوا وردپرس خود بروید و ببینید آیا یک فایل .maintenance در آنجا وجود دارد یا نه (ممکن است نام فایل نیز به صورت مخفف باشد). حالا باید این فایل را حذف کنید و دوباره سایت را بارگذاری کنید.
- اگر بهروزرسانی موفقیتآمیز بود، اما وردپرس نتوانست این فایل را به طور خودکار حذف کند، همه چیز باید به حالت عادی برگردد.
- اگر بهروزرسانی کامل نشده باشد، ممکن است به طور خودکار راهاندازی مجدد شود، در این صورت همه چیز باید به همان حالت عادی برگردد.
- اگر همه چیز شکست خورد، بهروزرسانی دستی وردپرس را دنبال کنید، که باید یک بار برای همیشه خطای صفحه سفید وردپرس را حل کند.
۸. رفع خطاهای نحوی یا بازگردانی بکآپ
یکی دیگر از دلایل رایج WSoD وردپرس زمانی است که در حال ویرایش کد در سایت وردپرس خود هستید و به طور تصادفی چیزی را اشتباه تایپ میکنید یا از نحو اشتباه استفاده میکنید.
یک کاراکتر در مکان اشتباه میتواند کل سایت شما را از بین ببرد، به همین دلیل است که هرگز نباید کد را در سایت تولید زنده خود ویرایش کنید.
هر چند جای نگرانی نیست. همیشه میتوانید از طریق FTP به سایت خود متصل شوید و تغییری را که به صورت دستی انجام دادهاید برگردانید. اگر نمیدانید چه تغییری باعث این مشکل شده است، در اینجا وجود پشتیبانگیری از وردپرس مفید است.
۹. قابلیت پردازش متن PHP را افزایش دهید
در این مرحله، اگر WSoD هنوز حل نشده است، یک ترفند اضافی وجود دارد که میتوانید امتحان کنید. در موارد نادر، این مشکل ممکن است به دلیل طولانی بودن صفحه یا پست ایجاد شود.
اگر چنین است، میتوانید با افزایش محدودیتهای بازگشت و بازگشت، قابلیت پردازش متن PHP را در سایت خود تنظیم کنید. برای انجام این کار، کد زیر را در فایل wp-config.php خود قرار دهید:
/* Trick for long posts /
ini_set('pcre.recursion_limit',۲۰۰۰۰۰۰۰);
ini_set('pcre.backtrack_limit',۱۰۰۰۰۰۰۰);
سپس تغییرات را ذخیره کنید و سایت را ریفرش کنید.
اگر تا اینجا رسیدهاید همزمان باید به شما تبریک بگوییم بابت پیگیری و بردباریتان و از طرف دیگر اظهار تاسف کنیم که مشکلتان انقدر پیچیده شد. اگر با این ۹ مرحله هم مشکلتان برطرف نشد کمی به شانس خودتان شک کنید. چرا که ۹۹.۹۹٪ خطای صفحه سفید وردپرس با این روشها حل میشود.
سوالات متداول
۱. خطای صفحه سفید مرگ چرا به وجود میآید؟
این خطا ممکن است به دلیل قالب یا افزونه مشکلدار، مشکلات در کد php،خطاهای نحوی و… به وجود آمده باشد. برای مطالعه هر کدام از دلایل به متن مقاله مراجعه کنید.
۲. چهطور میشود خطای صفحه سفید مرگ را برطرف کرد؟
ابتدا باید ریشه بهوجود آمدن این خطا را پیدا کنید سپس برای حل این مشکل اقدام کنید. برای پیدا کردن علت این خطا و نحوه رفع آن در مقاله ۹ روش مختلف را آموزش دادهایم.
خداحافظ صفحه سفید
در این مطلب هرچه روش برای برطرف کردن خطای صفحه سفید وردپرس در دنیا وجود داشت را با شما به اشتراک گذاشتیم. اگر هنوز سوالی درباره هریک از روشها و مراحلش دارید، میتوانید از بخش نظرات زیر همین پست از ما بپرسید و پاسخ بگیرید. در صورتی که ترفند یا روشی را تجربه کردهاید که ما در این جا به آن اشاره نکردهایم میتوانید از همین بخش با سایر کاربران به اشتراک بگذارید.
دیدگاه ها
اولین نفری باشید که دیدگاه خود را ثبت می کنید