یکی از بدترین حالتهایی که برای سایتهایی که با وردپرس طراحی شده اند پیش می آید حالت صفحه سفید مرگ وردپرس است که در آن کاربر با یک صفحه کاملا سفید بدون هیچ نوع محتوایی مواجه می شود. صفحه سفید مرگ وردپرس یا در اصطلاح 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
alireza
این قسمت رو من پیدا نکردم تو php my admin لطفا بیشتر توضیح بدبن
عباس
من با آپديت وردپرس سايتم اومد. ولي قالب مشكل دار شد
محمدرضا صیدگر
سلام
ببخشید من افزونه هارو غیر فعال کردم بعد یکی یکی فعال کردم دیدم مشکل از افزونه ی sw woocomerce هست
بعد که غیر فعال میکنم صفحه سفید میره
ولی خوب بدون این افزونه سایت هیچی نداره
اسلاید و پیشنهاد ویژه هام میره
میشه راهنمایی کنین چیکار میشه کرد؟
amir
سلام من امروز صبح میخواستم سایتمو باز کنم دیدم باز نمیشه با لود طولانی مواجه میشه و در اخر هم نمیره داخل این مشکل برای ورود به کنترل پنل وردپرسم دارم.اما وارد cpanel میشه . ولی وقتی میخوام فایل منجر باز کنم این ارور میده
Unable to login to FTP server 185.27.134.11 with username .
Are you sure your username and password are correct? Please contact your ISP helpdesk or system administrator for help
اتنا
سلام اگر کسی میدونه خواهش میکنم من رو راهنمایی کنه. من وقتی یه نوشته یا برگه جدید اضافه میکنم وقتی گزینه نمایش رو انتخاب میکنم پیغام میده که صفصه مورد نظر یافت نشد فقط تئ قسمت ویرایش میتونم ببینم . باید چیکار کنم؟
حسین
با سلام من افزونه سوپر کش را نصب کردم که کل سایت منو با مشکل مواجه کرد بعد پاکش کردم اما همچنان ارور این افزونه را میدهد من چجوری از شر این افزونه خلاص بشم؟
به پیشخوان دسترسی ندارم و همه راه ها رو امتحان کردم اما همچنان سایت سفید است. tohidcf.ir
جواد
آقا دمت گرم
من فک کردم دهن سایتم سرویس شده باس وردپرسو دوباره نصب کنم نگو نسخه یه افزونه به وردپرس من نمیخورده…
نجاتم دادی داداچ!
shadiii
من wp-confing ندارم w3-confing دارم این همونه؟
ali
ممنون
واقعا آزار دهنده هست
اعصاب رو هم خیلی خورد میکنه :///
شاهرخ
سلام خسته نباشید
بنده امروز وقتی میخوام وارد پیشخوان سایتم بشم user , pass رو که وارد میکنم میگه پسورد یا یوز اشتباهه!در صورتی که مطمنم درست میزنم.رفتم ار php Admin دیدم pass سایت تغییر کرده!چرا نمیدونم؟!هک شدم؟!
پسورد رو تغییر دادم به پسورد قبلی
باز هم user و pass رو وارد میکنم میگه اشتباهه!حتی تغییر رمز از طریق فراموشی رمز هم از ایمیل سایت که وارد میکنم میگه همچین ایمیلی نیس
یه نکته اینکه من روز قبلش وردپرس و چند تا افزونه و پوسته سایت رو آپدیت کردم ممکنه از این باشه؟
آخه رمز ورود چرا باید خود به خود تغییر کنه؟!
ممنون از پاسختون.مرسی