سبد خریدتان در حال حاضر خالی است!
ما بارها خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند» را در هنگام کمک به کاربران وردپرس برای رفع مشکلات وبسایتشان مشاهده کردهایم.
این یک مشکل رایج است که میتواند مانع ورود شما به پیشخوان وردپرس یا دسترسی به آن شود و در بدترین زمان ممکن شما را دچار مشکل کند. این خطا اغلب پس از تغییرات کوچک، مانند ویرایش یک قالب یا فعال کردن یک افزونه، ظاهر میشود و پیدا کردن دلیل مشکل میتواند خستهکننده باشد.
خبر خوب این است که این مشکل کاملاً قابل رفع است.
در این راهنما، مراحل دقیقی که برای رفع این خطا استفاده میکنیم را به اشتراک میگذاریم تا بتوانید بدون استرس سایت خود را دوباره به مسیر درست بازگردانید.
در این آموزش، مروری سریع بر موضوعاتی که پوشش خواهیم داد:
- دلایل بروز خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند»
- چگونه خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند» را برطرف کنیم
- بررسی وجود فضای اضافی در فایلهای PHP
- غیرفعال کردن موقت تمام افزونهها
- تغییر به یک قالب پیشفرض وردپرس
- اشکالزدایی با حالت WP_DEBUG
- جلوگیری از بروز این خطا در آینده
- منابع کمکی اضافی
دلایل بروز خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند» چیست؟
بر اساس تجربه ما، این خطا معمولاً زمانی ظاهر میشود که یک قطعه کد سفارشی، افزونه وردپرس، یا قالب باعث ایجاد خروجیای شود که مانع از بارگذاری فایلهای وردپرس به ترتیب درست میشود.
وردپرس مجموعهای خاص از دستورالعملها را در پسزمینه اجرا میکند تا سایت شما بهدرستی کار کند. اگر چیزی این فرآیند را مختل کند، وردپرس ممکن است رفتارهای غیرمنتظرهای از خود نشان دهد.
برای جزئیات بیشتر، به راهنمای ما درباره نحوه کار وردپرس در پشت صحنه مراجعه کنید.
در این مورد، این خطا به این دلیل رخ میدهد که وردپرس نتوانسته کوکی ورود را تنظیم کند، حتی اگر سایر کدها به درستی بارگذاری شده باشند.
این مشکل کوچک میتواند دردسر بزرگی ایجاد کند. برای مثال، ممکن است مانع ورود شما و سایر کاربران به وبسایت وردپرس شود.
در اینجا برخی از رایجترین دلایل این خطا که ما مشاهده کردهایم آورده شده است:
- فضای اضافی در فایلهای PHP: وجود فاصلهها یا خطوط خالی ناخواسته در فایلهایی مانند wp-config.php یا فایلهای افزونه میتواند این مشکل را ایجاد کند.
- تعارض افزونهها: گاهی اوقات، یک افزونه ممکن است خروجی غیرمنتظرهای تولید کند که باعث تداخل با کوکیها شود.
- نسخههای قدیمی هسته وردپرس، افزونهها یا قالبها: استفاده از نسخههای قدیمی میتواند به مشکلات سازگاری و خطاها منجر شود.
- کد سفارشی: اگر اخیراً کد سفارشی به سایت خود اضافه کردهاید، ممکن است مشکل از آن باشد.
- مشکلات محیط میزبانی: در موارد نادر، این خطا ممکن است به دلیل تنظیمات نادرست سرور ایجاد شود.
با درک این دلایل، ایدهای روشنتر از جایی که باید فرآیند عیبیابی را شروع کنید خواهید داشت. در بخش بعدی، شما را گامبهگام برای رفع هر یک از مشکلات احتمالی راهنمایی خواهیم کرد.
چگونه خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند» را برطرف کنیم
رفع این خطا ممکن است دشوار به نظر برسد، اما آسانتر از چیزی است که فکر میکنید.
ما شما را گامبهگام از طریق یک سری مراحل ساده برای شناسایی و حل مشکل راهنمایی خواهیم کرد. این راهحلها براساس دلایل رایجی است که هنگام کمک به دیگران با همین مشکل با آنها مواجه شدهایم.
چه یک اشتباه کوچک در کد شما باشد، چه یک افزونه مشکلساز یا یک قالب قدیمی، پاسخها را اینجا پیدا خواهید کرد.
بیایید با رایجترین دلیل این خطا شروع کنیم.
1. بررسی وجود فاصلههای اضافی در فایلهای PHP
یکی از دلایل رایج این خطا وجود فاصلههای اضافی در فایلهای وردپرس است. این فاصلهها ممکن است قبل از تگ ابتدایی در فایلهای PHP ظاهر شوند. حتی یک خط خالی نیز میتواند باعث مشکلاتی شود.
در اینجا نحوه رفع آن را توضیح میدهیم:
ابتدا باید از یک کلاینت FTP یا ابزار مدیریت فایل در کنترل پنل هاست خود برای دسترسی به فایلهای وبسایتتان استفاده کنید.
پس از اتصال، فایل wp-config.php را پیدا کنید. این فایل یکی از رایجترین مکانهایی است که ممکن است فاصلههای اضافی در آن ظاهر شوند.
به دنبال خطوط خالی یا فاصلههای اضافی قبل از باشید. لازم است هر فاصله اضافی را حذف کنید.
پس از انجام این کار، تغییرات خود را ذخیره کرده و فایل را دوباره به سرور خود آپلود کنید.
سپس وبسایت خود را بررسی کنید تا ببینید آیا خطا برطرف شده است یا خیر.
اگر همچنان خطا را مشاهده میکنید، باید مراحل بالا را برای فایلهای وردپرس دیگری که بهطور معمول ویرایش میشوند، مانند فایل functions.php قالب، تکرار کنید، بهویژه اگر اخیراً آن را ویرایش کرده یا قالب وردپرس خود را بهروزرسانی کردهاید.
پاک کردن فاصلههای اضافی قبل از کد PHP معمولاً مشکل را حل میکند.
با این حال، یک وبسایت وردپرس معمولی شامل صدها فایل PHP است و بسیاری از آنها در افزونهها و قالبهای وردپرس شما قرار دارند. بررسی و پاکسازی همه آنها امکانپذیر نیست.
مراحل بعدی به شما نشان میدهد چگونه تعیین کنید که آیا افزونهها یا قالبهای شما باعث بروز این خطا شدهاند یا خیر.
2. غیرفعال کردن موقت تمام افزونهها
گاهی اوقات، تداخل افزونهها میتواند باعث تولید خروجی غیرمنتظره در وردپرس شود که منجر به خطای “کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند” میشود. غیرفعال کردن موقت تمام افزونهها یک روش سریع برای بررسی این است که آیا یکی از آنها باعث بروز مشکل شده است یا خیر.
اگر به داشبورد دسترسی دارید، به صفحه افزونهها » افزونههای نصبشده بروید.
باید تمام افزونهها را انتخاب کرده، گزینه «غیرفعالسازی» را از منوی کشویی عملیات دستهای انتخاب کرده و روی «اعمال» کلیک کنید.
حال، سعی کنید وارد شوید یا صفحه را رفرش کنید تا ببینید آیا خطا برطرف شده است یا خیر.
اگر نتوانستید به ناحیه مدیریت وردپرس دسترسی پیدا کنید، میتوانید افزونهها را از طریق یک کلاینت FTP غیرفعال کنید.
برای این کار، کافی است با استفاده از یک کلاینت FTP یا اپلیکیشن مدیر فایل در پنل کنترل هاستینگ وبسایت خود به وردپرس متصل شوید.
پس از اتصال، باید به پوشه wp-content بروید.
داخل پوشه wp-content، یک پوشه به نام plugins خواهید دید. باید روی آن کلیک راست کرده و گزینه ‘Rename’ را انتخاب کنید.
سپس، نام پوشه plugins را به هر چیزی که میخواهید تغییر دهید. در مثال ما، آن را ‘plugins.deactivated’ مینامیم.
وردپرس به دنبال پوشه plugins میگردد تا افزونههای فعال را بارگذاری کند. زمانی که این پوشه را پیدا نکند، به سادگی نمیتواند آنها را فعال کند و بهطور خودکار آنها را غیرفعال میسازد.
برای جزئیات بیشتر، به آموزش ما در مورد چگونگی غیرفعال کردن تمام افزونههای وردپرس مراجعه کنید.
اگر خطا پس از غیرفعال کردن تمام افزونهها از بین رفت، این به این معنی است که یکی از افزونههای شما علت این مشکل بوده است.
افزونهها را یکی یکی دوباره فعال کنید تا متوجه شوید کدام یک باعث بروز خطا شده است. پس از شناسایی آن، میتوانید آن را بهطور دائم غیرفعال کرده یا از توسعهدهنده افزونه کمک بگیرید.
3. تغییر به یک قالب پیشفرض وردپرس
قالب وردپرس شما نیز ممکن است باعث خطای “کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند” شود. ممکن است یک تضاد قالب به دلیل کد قدیمی یا خروجی غیرمنتظره از تغییرات ایجاد شود.
برای رفع مشکل مربوط به قالب، باید به یک قالب پیشفرض وردپرس مانند Twenty Twenty-Five یا Twenty Twenty-Four تغییر دهید:
اگر به ناحیه مدیریت وردپرس دسترسی دارید، میتوانید به سادگی به صفحه ظاهر » قالبها بروید.
از اینجا، بررسی کنید که آیا یک قالب پیشفرض نصب شده است یا خیر. قالبها معمولاً به نام سالها نامگذاری میشوند، مانند Twenty-Five یا Twenty-Four.
اگر یک قالب پیشفرض نصب شده باشد، به سادگی روی گزینه “فعالسازی” کلیک کنید تا قالب خود را تغییر دهید. اگر قالب پیشفرضی نصب نشده باشد، روی دکمه “افزودن قالب جدید” در بالای صفحه کلیک کنید تا یکی را نصب کنید.
برای اطلاعات بیشتر، راهنمای ما در مورد نحوه نصب قالب وردپرس را ببینید.
از طرف دیگر، اگر نتوانید وارد ناحیه مدیریت وردپرس شوید، باید از کلاینت FTP یا اپلیکیشن File Manager در حساب هاستینگ خود برای تغییر قالب استفاده کنید.
به سادگی به سایت خود از طریق FTP متصل شده و به پوشه /wp-content/ بروید.
در اینجا، روی پوشه themes کلیک کرده و نام آن را به themes-deactivated تغییر دهید. این کار باعث غیرفعال شدن قالب فعلی وردپرس شما میشود.
حال، روی پوشه راستکلیک کرده و گزینه “ایجاد دایرکتوری” را از کلاینت FTP خود انتخاب کنید.
شما باید این دایرکتوری را “themes” نامگذاری کنید. این کار یک پوشه جدید و خالی به نام themes ایجاد میکند که هیچ قالبی در آن نصب نشده است.
مرورگر شما فایل زیپ قالب را به کامپیوتر شما دانلود خواهد کرد.
سپس، شما باید روی فایل زیپ کلیک کرده و آن را استخراج کنید.
حال باید یک پوشه با نام قالب داشته باشید.
حال به کلاینت FTP یا برنامه File Manager بازگشته و پوشه خالی themes در وبسایت خود را باز کنید.
حال باید پوشه قالب را از کامپیوتر خود به وبسایتتان آپلود کنید.
پس از آپلود قالب، وردپرس بهطور خودکار از تنها قالب موجود در پوشه themes استفاده خواهد کرد.
اگر با تغییر به یک قالب پیشفرض مشکل حل شد، پس مشکل از قالب قبلی شماست. شما میتوانید برای بررسی بهروزرسانیها، اصلاح کد قالب یا درخواست کمک از توسعهدهنده قالب اقدام کنید.
4. عیبیابی با حالت WP_DEBUG
اگر مشکل ادامه داشت، فعال کردن حالت اشکالزدایی وردپرس میتواند به شناسایی علت دقیق خطا کمک کند.
حالت WP_DEBUG یک ویژگی داخلی است که خطاها و هشدارها را ثبت میکند و باعث میشود که شناسایی علت خروجی غیرمنتظره راحتتر شود.
برای فعال کردن حالت WP_DEBUG، ابتدا باید به فایلهای وردپرس خود از طریق یک FTP کلاینت یا ابزار File Manager در پنل کنترل هاست خود دسترسی پیدا کنید.
فایل wp-config.php را در پوشه ریشه نصب وردپرس پیدا کرده و آن را برای ویرایش باز کنید.
خطی را که نوشته شده است /* That’s all, stop editing! Happy publishing. */ پیدا کنید و کد زیر را درست بالای آن اضافه کنید:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
خط اول اشکالزدایی را فعال میکند. خط دوم یک فایل لاگ ایجاد میکند تا پیامهای خطا را ذخیره کند و خط سوم خطاها را از نمایش در سایت شما پنهان میکند.
پس از ذخیره تغییرات، وردپرس یک فایل لاگ اشکالزدایی در پوشه /wp-content/ ایجاد میکند. نام این فایل debug.log است.
شما میتوانید آن را باز کرده و خطاها و هشدارهای ثبتشده در آن را بررسی کنید.
پس از پیدا کردن مشکل، باید حالت WP_DEBUG را با تنظیم WP_DEBUG به false غیرفعال کنید. این کار از افشای اطلاعات حساس جلوگیری میکند.
اگر به مراحل دقیقتری نیاز دارید، راهنمای ما در مورد چگونگی فعالسازی آسان حالت اشکالزدایی وردپرس برای رفع خطاهای سایت را بررسی کنید.
این مرحله بهویژه برای کاربران پیشرفته یا هنگام همکاری با یک توسعهدهنده یا تیم پشتیبانی مفید است. این کار بینشهای دقیقی از مشکلات پیشآمده فراهم میکند.
جلوگیری از بروز خطا در آینده
پس از رفع خطای «کوکیها به دلیل خروجی غیرمنتظره مسدود شدهاند»، بهتر است اقداماتی انجام دهید تا از بروز مجدد این مشکل جلوگیری کنید.
در اینجا چند نکته برای حفظ عملکرد روان سایت وردپرس شما آورده شده است:
1. اطمینان از داشتن پشتیبانگیری خودکار برای سایت وردپرس
پشتیبانگیری از سایت وردپرس برای ایمن نگه داشتن سایت شما ضروری است و روشی آسان برای بازیابی سایت در صورت بروز خطا میباشد.
ما از Duplicator برای بسیاری از پشتیبانگیریهای سایت خود استفاده میکنیم زیرا این ابزار پشتیبانگیری خودکار زمانبندیشده، بازیابی یککلیکی و گزینههای ذخیرهسازی امن مانند Google Drive، Dropbox و غیره را ارائه میدهد.
برای اطلاعات بیشتر، بررسی کامل Duplicator را ببینید.
۲. استفاده از WPCode برای افزودن کد سفارشی
به جای افزودن کد سفارشی به فایل functions تم خود، ما پیشنهاد میکنیم همیشه از WPCode استفاده کنید. ما از آن در تمام سایتهای خود برای مدیریت قطعههای کد سفارشی استفاده میکنیم.
این بهترین مدیر قطعه کد برای وردپرس است و با مدیریت خطاهای داخلی ارائه میشود. هر کد سفارشی که باعث ایجاد خطا در سایت شما شود، بهطور خودکار غیرفعال خواهد شد. برای اطلاعات بیشتر، بررسی WPCode را ببینید.
۳. بهروز نگه داشتن سایت وردپرس
باید اطمینان حاصل کنید که بهطور منظم بروزرسانیها برای هسته وردپرس، پلاگینها و تمها را نصب میکنید. بروزرسانیها به جلوگیری از مشکلات سازگاری و خطاهایی که به دلیل نرمافزار قدیمی ایجاد میشوند، کمک میکنند.
ما یک راهنمای کامل برای بهروزرسانی ایمن وردپرس داریم که میتوانید برای دستورالعملهای گام به گام از آن استفاده کنید.
شما همچنین میتوانید از انتخاب یک سرویس نگهداری وردپرس بهرهمند شوید. این سرویس میتواند همه چیز از جمله پشتیبانگیری، بهروزرسانیها و نظارت مستمر بر زمان فعالیت را مدیریت کند. برای اطلاعات بیشتر، میتوانید بستههای نگهداری وردپرس WPBeginner ما را بررسی کنید.
با پیروی از این نکات، میتوانید خطر خطاهای وردپرس را کاهش دهید و اطمینان حاصل کنید که سایت وردپرس شما امن و قابل اعتماد باقی میماند.
دیدگاهتان را بنویسید