خطای 504 – خطای 504 gateway timeout – رفع خطای 504
خطای 504 gateway timeout
خطای 504 gateway timeout در دسته خطاهای مرسومی است که روزانه کاربران زیادی با آن مواجه می شوند. در این مطلب سعی داریم تا شما را با این خطا آشنا کرده و راه های عیب یابی و رفع آن را به شما آموزش دهیم.
اشکال مختلف خطای 504 gateway timeout
بسته به اینکه خطای 504 gateway timeout از چه محلی به شما بازگردانده می شود شکل اتفاق افتادن آن نیز ممکن است, متفاوت باشد.
مفهوم خطای 504 به این معنی است: سروری که به عنوان Gateway عمل می کند, نتوانسته در زمان مقرر شده پاسخ مناسبی را دریافت کند و به همین جهت امکان پاسخ دهی به درخواست شما و نمایش صفحه مورد نظر میسر نشده است.
هر چند خطای 504 یک خطای سمت سرور است, ولی این مساله به این مفهوم نیست که اگر به این خطا برخورد کردید سرور میزبانی شما مشکلی دارد بنابراین در نظر داشته باشید, که در این حالت هم ممکن است مشکل از سایت خود شما نشات بگیرد. پس صبور باشید تا در رفع این خطا بهترین نتیجه را مشاهده کنید. تصویر اول مربوط به وقوع خطا در سایتی با وب سرور NginX را نشان می دهد.. این تصویر وقوع خطا در Cloud Flare را به نمایش می گذارد. نمایش خطا در مرورگرتان به شکل زیر می باشد. همانطور که مشاهده می کنید در تصویر بالا مرورگر ذکر کرده Domain.com took too long to respond و سپس در بخش خطا 504 HTTP Error را لیست کرده است این مساله دقیقا به شرح این خطا می پردازد که در ابتدا در رابطه با آن توضیح دادیم. و می گوید, پاسخ دهی سایت مورد نظر شما بیش از اندازه به طول انجامیده است.
پیدا کردن دلیل و رفع خطای 504
خواهشمند است پیش از انجام هر کاری روی سایتتان از آن بک آپ تهیه فرمائید.
1- شاید خطا موقتی باشد.
قبل از اینکه شروع به عیب یابی کنید در نظر داشته باشید که این خطا ممکن است, کاملا موقتی باشد. بنابراین چند دقیقه صبر کنید. و مجددا سایت را بارگذاری کنید
2- نیاز به افزایش منابع سایت
یکی از مسائلی که در اکثر هاستینگ ها وجود دارد. اشتراک عادلانه منابع بین کاربران عموم هاست های اشتراکی به نحوی تنظیم می شود, که از استفاده بیش از حد منابع توسط یک وب سایت جلوگیری کند.
چرا که در صورت استفاده بیش از حد مجاز تعریف شده برای کاربرمی تواند منجر به ایجاد اشکال بر روی سرور شود.
بنابراین یکی از دلایلی که ممکن است باعث بروز این خطا شود, همین کمبود منابع و یا گاهی کمبود worker های PHP اختصاص داده شده به سایت شما است.
حدس زدن این موضوع که سایت شما به منابع بیشتری نیاز دارد, با بررسی بازدید ها یا افزایش تعداد افزونه ها و مواردی از این قبیل است. برای شما که مدیر سایت هستید کار آسانی است.
جهت حصول اطمینان و بررسی بیشتر بهتر است از پشتیبانی هاستینگ خود درخواست کنید, تا مصرف منابع سایت شما را بررسی کرده و اگر مشکل از کمبود منابع در دسترس سایت سرچشمه می گیرد. شما را در ارتقا پلن و انتخاب سرویسی متناسب با نیازهای متناسب با سایت راهنمائی کند.
3- احتمال حمله DDOS
افزایش بازدیدکنندگان یک سایت لزوما به معنای حمله دی داس نیست.بررسی این مساله هم با چک کردن نوع درخواست ها, IP کاربران, آدرس ارجاع دهنده, اطلاعات مرورگر و مواردی از این قبیل میسر بوده و کار بسیار آسانی است.
اگر فرضا افزونه امنیتی موجود در سایت نکته نگران کننده ای را پیدا کرده یا در این زمینه تهدیدی داشته اید. در چنین حالتی پس از حصول اطمینان از وجود حمله, می توانید از سرویس هائی مانند Cloud Flare استفاده کنید. اگر امکان استفاده از این سرویس را ندارید.
خونسردی خود را حفظ کرده و با پشتیبان هاستینگ خود تماس بگیرید و اطلاع دهید تا با خارج کردن سایت شما از دسترس برای مدت زمانی مشخص مشکل را موقتا برطرف کنید.
4- ست نشدن کامل DNS های سایت
اگر اخیرا سایتتان را منتقل کرده اید ممکن است وجود خطای 504 به علت ست نشدن DNS ها برای شما پیش آمده باشد بنابراین پس از انتقال سایتتان به هاست جدید حتما بررسی کنید که DNS های صحیح روی دامنه شما تنظیم شده باشد.
در نظر داشته باشید که ست شدن کامل DNS روی دامنه ممکن است تا 24 ساعت نیز به طول بیانجامد.
ست شدن کامل DNS روی دامنه تان را می توانید در سایتی مانند intodns.com بررسی نمائید. اگر پس از بررسی دامنه در این سایت همه چیز مرتب بود ولی هنوز قادر به مشاهده سایت نمی باشید.
ابتدا از سایت خود Ping بگیرید تا مشخص شود کامپیوتر شما درخواست را به کدام سرور می فرستد(سرور قدیمی یا جدید) اگر درخواست هنوز به سرور قدیمی فرستاده می شود با وارد کردن دستور زیر در CMD ویندز (با زدن کلیدهای ترکیبی win+R) می توانید کش DNS خود را خالی کنید.
ipconfig/flushdns
پس از خالی کردن کش DNS سیستم عامل مجددا تست PING را تکرار کنید تا اطمینان حاصل شود که سایت در سرور جدید قابل مشاهده است.
در نهایت در صورت لزوم تست را با یک مرورگر جدید امتحان کنید.
5- پایگاه داده نیاز به تعمیر دارد.
هر چند این مساله خیلی کم پیش می آید اما گاهی ممکن است بروز این خطا به علت نیاز پایگاه داده به تعمیر باشد تعمیر پایگاه داده های کوچک از طریق PHPmyadmin و یا افزونه ای مانند WP-dbmanager امکان پذیر است ولی برای پایگاه داده های بزرگتر ممکن است لازم باشد از دستور استفاده کنید.
قبل از انجام هر تغییر روی پایگاه داده حتما از آن بک آپ تهیه کنید.
6- تغییر در فایل htaccess
تغییرات ایجاد شده در فایل htaccess نیز می تواند از دلایل بروز خطای 504 باشد.البته در نظر داشته باشید که ممکن است خود شما مستقیما تغییری ایجاد نکرده باشید و این تغییر از طریق یک افزونه جانبی روی این فایل اعمال شده باشد.
به هر حال شما باید این فایل را به حالت قبلی بازگردانده و نتیجه را بررسی کنید اگر شک دارید که واقعا مشکل از htaccess باشد می توانید پس از ایجاد بک آپ از این فایل آن را به صورت موقت از کدهای اضافی خالی کرده و نتیجه را بررسی نمائید.
توجه داشته باشید که در صورت نداشتن بک آپ شما می توانید با صرف کمی وقت و انجام آزمون و خطا می توانید. کدی که منجر به بروز خطا می شود را یافته و آن را حذف کنید.
7- افزونه یا قالب جدید
در بسیاری از مواقع پس از نصب قالب یا افزونه جدید یا حتی به روز رسانی برخی از این ها می تواند در سایت شما مشکل ایجاد کند.
بنابراین اگر تغییری در سایت اعمال کرده اید بهترین کار اینست که آن را به حالت قبلی بازگردانید یا اگر نمی دانید مشکل از کدام افزونه است می توانید کلیه افزونه های سایت راغیر فعال کنید و دسترسی به سایت را مجددا بررسی نمائید.
افزونه یا قالبی که درست کار نکند می تواند منجر به بروز کندی در پاسخ دهی سایت شده و در نهایت خطای 504 را ایجاد کند.
8- استفاده از فایروال
فایروال لایه امنیتی است که بین مرورگر و بازدید کننده قرار می گیرد اگر در سایت خود فایروال را فعال کرده باشید وجود هر نوع مشکل در تنظیمات فایروال ممکن است از دسترسی کاربران به سایت جلوگیری کند و منجر به بروز خطا شود. برای رفع خطای 504 gateway timeout می توانید فایروال خود را غیر فعال کنید و سپس دسترسی به سایت را مجددا بررسی نمائید.
9- تنظیمات CDN
مشابه مباحث مطرح شده برای فایروال همین حالت در صورت استفاده از CDN نیز ممکن است برای شما رخ بدهد بنابراین اگر از CDN استفاده می کنید بهتر است که ابتدا تنظیمات آن را بررسی کرده و یا در صورت نیاز با پشتیبان CDN خود در این رابطه مشورت کنید.
جمع بندی
در باالا موارد مختلفی که می تواند منجر به خطای 504 gateway timeout شود را بررسی کردیم و راه حل های لازم را ارائه نمودیم. در انتها مجددا روی اهمیت ایجاد بک آپ از سایتتان پیش از انجام هر کاری و هر نوع تغییری جهت رفع خطا تاکید می کنم.
شما می توانید فایل کامل این آموزش را دانلود نمائید.
اگر در زمینه رفع این خطا تجربه ای دارید خوشحال می شویم که با ما و سایر همکارانتان به اشتراک بگذارید