یکی از ارورهایی که در هر سایتی و از جمله سایتی با نرم‌افزار وردپرس ممکن است با آن مواجه شوید، ارور ۵۰۲ است. این ارور مربوط به سرور یا هاست سایت است اما دلایل زیادی برای آن وجود دارد. به همین علت است که رفع ارور 502 معمولاً ساده نیست.

در این مقاله به چند علت برای ارور 502 bad Gateway در سایت‌های مبتنی بر WordPress پرداخته و راهکارهای حل مشکل را بررسی می‌کنیم. با ما باشید.

آشنایی با ارور 502 Bad Gateway در سایت‌ها و وردپرس

اروری با کد ۵۰۲ یا به صورت کامل‌تر ارور 502 Bad Gatewat زمانی رخ می‌دهد که هاست یا سرور سایت پاسخی نامعتبر به صفحه یا فایل درخواست شده توسط مرورگر کاربر بدهد. در واقع زمانی که آدرس سایت یا صفحه‌ای از سایت را وارد کرده و کلید Enter را فشار می‌دهید، مرورگر اینترنت برای سرور سایت درخواستی ارسال می‌کند تا محتوا را تحویل بگیرد. آنچه تحویل داده می‌شود، دارای کد وضعیت است و ارور ۵۰۲ هم به معنی ارایه‌ی کد وضعیت ۵۰۲ توسط سرور سایت است.

برای اطلاعات کامل‌تر در مورد ارورهای مختلف و کدهای سری ۵۰۰، به یکی از مقالات بخش دانش‌نامه‌ی سیاره‌ی آی‌تی توجه فرمایید:

خطای Bad Gateway یکی از ارورهایی است که ممکن است در WordPress بیش از ارورهای دیگر با آن روبرو شوید و البته دلایل مختلفی هم برای این رویداد وجود دارد.

رفع ارور ۵۰۲ و علت‌های آن در سایت وردپرسی

یکی از متداول‌ترین دلایل نمایش ارور 502 Bad Gateway این است که سرور سایت بسیار کند و آهسته به درخواست مرورگر کاربر پاسخ می‌دهد. ممکن است سرور دچار خرابی‌های موقت شده باشد و ممکن است به دلیل زیاد بودن درخواست‌ها و کمبود قدرت پردازشی یا رم و همین‌طور پهنای باند سرور یا هاست، پاسخ‌گویی سریع ممکن نباشد. در این صورت طراح و مدیر سایت می‌تواند از هاستینگ سریع‌تری با منابع بیشتر استفاده کند و یا قالب و افزونه‌های سایت خویش را بهینه و سبک‌تر کند. در ادامه به چند راهکار ساده برای حل مشکل ارور ۵۰۲ می‌پردازیم.

روش‌های رفع ارور ۵۰۲ در وردپرس

با توجه به متعدد بودن دلایل رخداد ارور 502، می‌بایست چند راهکار اصلی و متداول را یک‌به‌یک بررسی و آزمایش کنید. قبل از بررسی کردن راهکارهایی که در ادامه مرور می‌کنیم، توجه کنید که ترافیک سایت شما به شدت بالا نرفته باشد و همین‌طور میزان استفاده از CPU و RAM سرور را بررسی کنید. طبعاً زمانی که ۱۰۰ درصد یکی از منابع پردازشی استفاده شده باشد، سرور نمی‌تواند به موقع پاسخ‌گوی کاربران جدید باشد و ارور ۵۰۲ رخ می‌دهد.

اگر رم نزدیک به ۱۰۰ درصد استفاده شده و در ساعت اوج ترافیک نیستید، طبیعی است که نیاز به هاست یا سروری با رم بیشتر دارید و باید رم را ارتقا دهید. ممکن است رم کافی باشد اما پردازنده به شدت مورداستفاده قرار گرفته باشد و همین‌طور ممکن است کارت شبکه‌ی سرور یا هاست، پاسخ‌گوی نیاز سایت شما نباشد. در این صورت باید ابتدا این موارد را ارتقا دهید و در صورت نیاز سراغ منابع پردازشی مهم بعدی مثل رم بروید.

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

بارگذاری مجدد سایت وردپرسی برای حل ارورها

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

البته توجه کنید که برخی ارورها مربوط به کدنویسی سایت وردپرسی است و ممکن است گاه و بیگاه ظاهر شود! لذا ارتقای سخت‌افزار می‌بایست پس از چک کردن میزان استفاده از منابع پردازشی انجام شود.

خالی کردن کش مرورگر

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

با کلید میانبر Ctrl + F5 در ویندوز و لینوکس و با کلید میانبر Cmd + Shift + R در مک‌او‌اس می‌توانید کش مرورگر را خالی کنید.

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

رفع ارور ۵۰۲ و علت‌های آن در سایت وردپرسی

پس از خالی کردن کش به صورت کامل، ممکن است ارور ۵۰۲ حذف شود.

پاک کردن کش DNS

در تبدیل آدرس سایت‌ها به IP Address سرور سایت نیز از روش کش کردن استفاده می‌شود. ممکن است پس از انتقال هاست از شرکتی به شرکت دیگر، با ارور ۵۰۲ روبرو شوید و علت این باشد که هنوز در حال بارگذاری سایت از سرور و هاست قبلی هستید. در این صورت می‌بایست کش DNS را با یک یک دستور ساده و همین‌طور خاموش و روشن کردن مودم پاکسازی کنید. برای اطلاعات بیشتر به مقاله‌ی قبلی سیاره‌ی آی‌تی در این رابطه توجه فرمایید:

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

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

علاوه بر غیرفعال کردن CDN توصیه می‌شود که افزونه‌های امنیتی و ضدهک و فایروال را موقتاً غیرفعال کنید چرا که ممکن است شناسه‌ی آی‌پی شما به دلیلی مسدود شده باشد و مشکلات عجیب در مورد آن به وجود آمده باشد و همین‌طور ممکن است مشکل عمومی و برای همه‌ی کاربران رخ داده باشد.

بروزرسانی وردپرس، قالب و افزونه‌ها برای حل ارور ۵۰۲

روش بعدی برای حل کردن مشکلات منجر به ارور 502 Bad Gateway این است که نرم‌افزار سایت و تمام پلاگین‌ها یا افزونه‌ها را بروزرسانی کنید چرا که ممکن است در نسخه‌های قدیمی‌تر، مشکلاتی وجود داشته باشد و همین‌طور افزونه‌ها یا قالب آپدیت نشده، با نسخه‌ی جدید WordPress سازگاری نداشته باشند. در نتیجه ایجاد صفحه‌های خاص یا تمام صفحات سایت غیرممکن می‌شود و بازدیدکننده ارور ۵۰۲ دریافت می‌کند.

بد نیست در صورت تداوم مشکل پس از بروزرسانی همه‌ی موارد، افزونه‌هایی که اخیراُ نصب کرده‌اید و مشکلات پس از آن ایجاد شده را غیرفعال کنید و حتی توصیه می‌شود که غیرفعال کردن تمام افزونه‌ها و موارد اضافی قالب را تست کنید. برای این مهم می‌توانید از پروتکل سرور FTP یا کنترل پنل هاستینگ مثل cPanel یا Direct Admin استفاده کنید و به راحتی نام فولدر پلاگین‌ها را تغییر دهید تا همگی غیرفعال شوند. در مورد قالب نیز می‌توانید قالب فعال را با تغییر در دیتابیس وردپرس از طریق phpMyAdmin عوض کنید و همین‌طور می‌توانید فولدر قالب فعال را موقتاً حذف کنید.

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

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

تماس با پشتیبانی هاست و سرور

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