صفحه سفید مرگ

آموزش رفع مشکل صفحه سفید مرگ در وردپرس

صفحه سفید مرگ (White Screen of Death) یکی از رایج ترین مشکلات وب سایت های وردپرسی بوده که بسیاری از کاربران مبتدی را سردرگم کرده است. صفحه سفید مرگ، همانطور که از نامش پیداست یک صفحه تمام سفید است که موقع ورود به پنل وردپرس یا وب سایت، کاربران با آن مواجه...
4 دقیقه
مطالعه

صفحه سفید مرگ (White Screen of Death) یکی از رایج ترین مشکلات وب سایت های وردپرسی بوده که بسیاری از کاربران مبتدی را سردرگم کرده است. صفحه سفید مرگ، همانطور که از نامش پیداست یک صفحه تمام سفید است که موقع ورود به پنل وردپرس یا وب سایت، کاربران با آن مواجه می شوند.

قسمت گیج کننده این مشکل این است که صفحه سفید مرگ، هیچگونه اطلاعاتی از علت مشکل ایجاد شده به کاربران نشان نمی دهد و کاربر به طور کامل از دسترسی به وردپرس منع می شود.

یکی دیگر از مشکلاتی که صفحه سفید مرگ به همراه دارد این است که گاهی اوقات، تنها یکسری از بخش های خاص وب سایت دچار این مشکل می شوند.

به طور مثال، ممکن است که شما صفحه سفید مرگ را تنها در داشبورد مدیریت وردپرس مشاهده کنید، درحالی که بقیه بخش های وب سایت به درستی کار می کنند.

در ادامه این مقاله قرار است تا نحوه برطرف سازی مشکل صفحه سفید مرگ وردپرس را با استفاده از راه حل های مختلف پوشش دهیم، پس با ما همراه باشید 🙂

توجه: قبل از آنکه هرگونه تغییراتی در وب سایت وردپرسی خود ایجاد کنید، مطمئن شوید که یک بکاپ از وب سایت خود تهیه کرده اید.

چرا صفحه سفید مرگ در وردپرس نمایان می شود؟

اکثر مواقعی که صفحه سفید مرگ را در وب سایت وردپرسی خود مشاهده می کنید، بدین معناست که یک اسکریپت بر روی وب سایت‌تان محدودیت حافظه (Memory limit) را پر کرده است.

اسکریپت بی پاسخ یا توسط سرور وردپرس حذف شده یا به سادگی مسدود می شود. به همین دلیل است که هیچ پیام خطایی نمایان نمی شود و تنها چیزی که می توان مشاهده کرد، یک صفحه سفید است.

صفحه سفید مرگ

این مشکل همچنین می تواند به دلیل کد نویسی ضعیف یک افزونه یا قالب ایجاد شود. علاوه بر آن، بروز مشکلاتی در سرور میزبانی وب سایت هم می تواند عامل ایجاد این مشکل شود.

از آن جایی که صفحه سفید مرگ می تواند توسط موارد مختلفی ایجاد شود، برای رفع آن نیاز به عیب یابی مناسب دارید.

آیا این مشکل برای دیگر وب سایت ها هم ایجاد می شود؟

اگر در حال حاضر چند وب سایت وردپرسی به طور همزمان بر روی یک سرور میزبانی می کنید، باید بررسی کنید که آیا مشکل صفحه سفید مرگ برای دیگر وب سایت های‌تان هم ایجاد شده است یا خیر.

اگر این مشکل برای دیگر وب سایت های‌تان هم وجود داشته باشد، می توان نتیجه گرفت که مشکلی در سرویس میزبانی وردپرس شما وجود دارد. این مسئله می تواند یک مشکل موقت باشد که سرویس ها را تحت تاثیر قرار داده و برای آنکه بتوانید آن را رفع کنید، باید با پشتیبانی شرکت میزبانی تماس بگیرید و مسئله را مطرح کنید.

از طرفی دیگر، اگر مسئله فقط مربوط به یک وب سایت یا قسمت خاصی از وب سایت باشد، می توان نتیجه گرفت که مشکل از آن وب سایت بوده و سرویس میزبانی مشکلی ندارد.

رفع مشکل صفحه سفید با حالت بازیابی وردپرس

اگر مشکل صفحه سفید مرگ توسط یک افزونه یا قالب ایجاد شده باشد، وردپرس می تواند آن افزونه یا قالب را تشخیص دهد.

ویژگی جدیدی که برای محافظت در برابر خطاهای کشنده در وردپرس نسخه 5.2 ارائه شده است، می تواند گاهی اوقات این نوع خطاها و مشکلات را متوجه شود. بنابراین ممکن است که حتی یک صفحه سفید را هم مشاهده نکنید و در عوض، پیامی مانند پیام زیر را که به شما می گوید “وب سایت دارای مشکلات فنی است” مشاهده کنید.

پیام وردپرس در برابر خطاهای کشنده

همچنین ممکن است که ایمیلی از طرف وردپرس با موضوع “وب سایت شما دارای مشکلات فنی است” دریافت کنید.

ایمیل ارسال شده توسط وردپرس

به عنوان مثال، در ایمیل بالا وردپرس به ما گفته است که افزونه Awesomeness Creator مشکلاتی را در وب سایت‌مان ایجاد کرده؛ اگر به ادامه ایمیل نگاه کنیم متوجه می شویم که یک لینک خاص وجود دارد. با کلیک بر روی آن لینک می توانیم به حالت بازیابی (Recovery Mode) وردپرس وارد شده و افزونه مخرب را غیرفعال کنیم.

حالت بازیابی وردپرس

اما اگر هیچگونه پیامی از طرف وردپرس مشاهده نکرده اید و تنها چیزی که می توانید مشاهده کنید، یک صفحه سفید خالی است، پس باید به دنبال رفع این مشکل به صورت دستی باشید.

برای بررسی راه حل های دستی برای رفع مشکل صفحه سفید مرگ (White screen of death) ادامه مقاله را مطالعه فرمایید.

افزایش محدودیت حافظه (Memory Limit)

به طور معمول، زمانی مشکل صفحه سفید رخ می دهد که یک اسکریپت، از تمامی حجم محدود حافظه استفاده کرده و در میان عملیات، غیرفعال شده است. برای رفع این مشکل، شما باید مقدار حافظه PHP موجود برای وردپرس خود را افزایش دهید. انجام این کار باعث می شود تا اسکریپت ها بتوانند از مقدار فضای بیشتر حافظه برای انجام کار خود به صورت موثر استفاده کنند.

برای انجام این فرآیند، می توانید مقاله ای که در رابطه با افزایش محدودیت حافظه PHP تهیه کرده ایم را مطالعه کنید.

غیرفعال کردن تمامی افزونه ها

اگر افزایش محدودیت حافظه PHP مشکل صفحه سفید را برطرف نکرد، باید عیب یابی مناسب را شروع کنید.

با توجه به تجربیاتی که کسب کرده ایم، مشکل صفحه سفید مرگ معمولاً توسط یک افزونه خاص یا قالب ایجاد می شود؛ به همین خاطر، غیرفعال سازی تمامی افزونه ها می تواند قدمی مناسب برای شروع کار باشد.

اگر هنوز به پنل مدیریت وردپرس دسترسی دارید، خیلی راحت به بخش افزونه ها » افزونه های نصب شده رفته و تمامی افزونه های فعال را انتخاب و سپس با اعمال گزینه غیرفعال، تمامی افزونه ها را غیرفعال کنید.

اما اگر به پنل مدیریت وردپرس دسترسی ندارید، می توانید آموزش غیرفعال سازی تمامی افزونه های وردپرس بدون نیاز به دسترسی به پنل مدیریت که تهیه کرده ایم را مطالعه فرمایید. با این حال در ادامه، نگاه سریعی به نحوه انجام این کار می اندازیم.

در ابتدا، به وب سایت وردپرسی خود با استفاده از FTP متصل شوید. سپس به پوشه wp-content رفته و پوشه plugins را پیدا کنید.

تغییر نام افزونه

حال بر روی پوشه plugins کلیک راست کرده و گزینه Rename (تغییر نام) را انتخاب کنید. نام پوشه plugins را به چیزی مانند plugins-deactivated تغییر دهید.

تغییر نام پوشه plugins

با انجام این کار، وردپرس دیگر قادر به شناسایی فایل افزونه ها نیست؛ زیرا وردپرس به طور معمول به دنبال پوشه ای به نام plugins می گردد تا بتواند تمامی فایل های مورد نیاز افزونه های نصب شده را بارگذاری کند. حال اگر وردپرس نتواند این پوشه را پیدا کند، به سادگی تمامی افزونه های فعال را غیرفعال می کند.

اگر این فرآیند مشکل صفحه سفید را حل کرد، بدین معناست که یکی از افزونه های نصب شده مشکل دارد. برای شناسایی افزونه مخرب، تک تک افزونه ها را به ترتیب در داشبورد وردپرس فعال کرده تا زمانی که مشکل صفحه سفید مجدداً نمایان شود؛ اگر پس از فعال سازی افزونه ای، مشکل صفحه سفید نمایان شد، آن افزونه مشکل دارد و بهتر است که آن را از روی وردپرس خود حذف کنید و مشکل را به توسعه دهنده افزونه گزارش دهید.

جایگزین کردن قالب با یک قالب پیش فرض

اگر غیرفعال سازی تمامی افزونه ها، مشکل صفحه سفید مرگ را رفع نکرد، می توانید قالب فعلی وب سایت خود را با یک قالب پیش فرض جایگزین کنید.

برای انجام این کار، ابتدا به وب سایت وردپرس خود با استفاده از FTP متصل شده و به پوشه /wp-content/themes/ بروید. این پوشه، فایل تمامی قالب های نصب شده بر روی وب سایت‌تان را ذخیره می کند.

بر روی پوشه قالب فعلی وردپرس خود کلیک راست کرده و با انتخاب گزینه Download، آن را بر روی کامپیوتر خود به عنوان یک بکاپ ذخیره کنید.

دانلود قالب به عنوان بکاپ

سپس پوشه قالب فعلی وب سایت‌تان را حذف کنید؛ برای انجام این کار به راحتی بر روی آن کلیک راست کرده و گزینه Delete را انتخاب کنید.

حذف پوشه قالب

حال اگر یک قالب پیش فرض (مانند دو هزار و هجده یا دو هزار و نوزده) بر روی وب سایت وردپرسی خود به صورت ذخیره داشته باشید، وردپرس به طور خودکار از آن قالب های پیش فرض به عنوان قالب فعلی وب سایت استفاده می کند.

اگر انجام این کار، مشکل صفحه سفید مرگ (White screen of death) را برطرف کرد، باید نگاهی به فایل functions.php قالب اصلی وب سایت‌تان داشته باشید. اگر در آخر فایل functions.php قالب اصلی وب سایت، فضاهای اضافی و خالی وجود دارد، آن ها را حذف کنید؛ گاهی اوقات انجام این کار باعث می شود تا مشکل صفحه سفید برطرف شود.

اگر هم که فایل functions.php قالب اصلی وب سایت‌تان از یک کدنویسی ضعیف استفاده می کند، به احتمال زیاد مشکل صفحه سفید ناشی از همین موضوع باشد.

اگر احساس کردید که قالب اصلی وب سایت‌تان دارای مشکلاتی است، سعی کنید که فایل های قالب را به طور تازه از وب سایت توسعه دهنده دانلود کرده و آن را مجدداً بر روی وردپرس خود نصب کنید.

فعال سازی حالت اشکال زدایی در وردپرس

اگر هیچ کدام از روش های ذکر شده در بالا در زمینه رفع مشکل صفحه سفید کمکی نکرد، بهتر است که حالت اشکال زدایی (Debug mode) وردپرس‌تان را فعال کنید. فعال سازی این حالت به شما این امکان را می دهد تا بتوانید خطاهایی که در حال خروجی هستند را مشاهده کنید.

برای فعال سازی این حالت، به سادگی قطعه کد زیر را به فایل wp-config.php وردپرس خود اضافه کنید:

define( 'WP_DEBUG', true);

define( 'WP_DEBUG_LOG', true );

پس از افزودن قطعه کد بالا، صفحه سفید مرگ دارای متن خطاها، هشدار ها و … می شود. این نوع خطاها و هشدار های نمایان شده در صفحه سفید می توانند به شما کمک کنند تا بتوانید علت اصلی مشکل بوجود آمده را بررسی کنید.

اگر با انجام فرآیند بالا، باز هم هیچ گونه خطا یا هشداری در صفحه سفید مشاهده نمی کنید، بهتر است که به دنبال فایل debug.log باشید. برای شناسایی این فایل، خیلی ساده به پوشه wp-content بروید. در این پوشه، فایلی به نام debug.log وجود خواهد داشت که تمامی خطاها و هشدار ها را در خود ذخیره کرده است.

فایل debug.log

پاکسازی کش وردپرس

گاهی اوقات ممکن است که به بخش backend وب سایت بتوانید دسترسی پیدا کنید اما دسترسی به بخش frontend باعث نمایان شدن صفحه سفید مرگ می شود. این موضوع ممکن است بخاطر یک افزونه کش (Cache) وردپرس بوجود آید. در اینجا، پیشنهاد می شود که یک‌دور کش وردپرس خود را پاکسازی کنید.

رفع مشکل در مقالات و صفحات طولانی

اگر مشکل صفحه سفید مرگ را تنها در مقالات و صفحات طولانی وب سایت خود دارید، انجام ترفند زیر می تواند به شما کمک کند.

این ترفند اساساً با افزایش recursion و backtrack، میزان قابلیت پردازش متن PHP را افزایش می دهد. برای انجام این ترفند، خیلی ساده قطعه کد زیر را به فایل wp-config.php وردپرس خود اضافه کنید:

/** Trick for long posts */

ini_set('pcre.recursion_limit',20000000);

ini_set('pcre.backtrack_limit',10000000);

امیدواریم که این مقاله توانسته باشد برای شما کاربران ارجمند مفید واقع شود 🙂

Views 0

مطالب مرتبط

مقدمه وب‌سایت دوربینو به‌عنوان بزرگترین فروشگاه دوربین و لوازم جانبی دوربین در ایران شناخته می‌ش...

10 ماه پیش

معرفی آی‌ایکس‌ویژن افتتاح وبسایت آی‌ایکس‌ویژن نقطه‌عطفی در صنعت فروش محصولات الکترونیکی در ایران...

10 ماه پیش

وب‌سایت لوکس موبایل، بزرگ‌ترین فروشگاه موبایل و لوازم جانبی موبایل، در دنیای پر از تکنولوژی امرو...

10 ماه پیش

مقدمه‌ای بر لوکس‌ویو لوکس ویو با افتخار اعلام می‌کند که وب‌سایت جدید خود را رونمایی کرده است و ب...

10 ماه پیش

معرفی فروشگاه آی‌تی دیجیتال فروشگاه آی تی دیجیتال به‌تازگی وب‌سایت جدید خود را رونمایی کرده است....

10 ماه پیش

معرفی وب‌سایت 20پارچه وب‌سایت 20پارچه با هدف ارائه‌ی بهترین و متنوع‌ترین لوازم خانگی به مشتریان،...

10 ماه پیش
تجربه کاربران

دیدگاه‌ها و پرسش‌ها

0 دیدگاه
بخش دیدگاه‌های این صفحه موقتاً در دسترس نیست.