در این مقاله قصد داریم درباره خطا 429 Too Many Requests اطلاعاتی را در اختیار شما قرار دهیم. ابتدا به اینکه این خطا چیست می پردازیم. سپس به علت رخ دادن این خطا نگاهی می اندازیم. در انتها نیز به شما خواهیم آموخت که راه حل رفع خطای 429 به چه صورت است. پس تا انتهای این مقاله جذاب همراه ما باشید.
آنچه خواهید خواند :
خطای 429 Too Many Requests چیست؟
چه چیزی باعث خطای 429 Too Many Requests می شود؟
چگونه خطای HTTP 429 را رفع کنیم؟
در چه شرایطی می توان از خطای 429 Too Many Requests اجتناب کرد ؟
خطای 429 Too Many Requests چیست؟
به عنوان صاحب وب سایت، گاهی با پیام های خطا مواجه خواهید شد. برخی از این خطاها را می توان به راحتی حل کرد، اما برخی دیگر از خطاها پیچیده هستند. برای مثال خطای HTTP 429 را در نظر بگیرید. مشخص کردن علت این خطا کار نسبتا پیچیده ای است چرا که جزئیات کمی در رابطه با ماهیت و نحوه حل آن ارائه می دهد. شما فقط می دانید که خطایی وجود دارد و باید آن را حل کنید اما دقیقا نمی دانید که چه اتفاقی افتاده و چرا. برای اینکه این مشکل را بهتر متوجه شوید و راه های رایج آن را بررسی کنید، ما ابتدا به شما می گوییم که خطای 429 به چه معنایی است و رایج ترین راه حل ها برای حل این خطا چیست.
خطای HTTP 429 یک کد وضعیت پاسخ HTTP است که نشان می دهد برنامه مشتری از محدودیت نرخ یا تعداد درخواست هایی که می توانند در یک دوره زمانی معین ارسال کنند فراتر رفته است. به طور معمول، این کد نه تنها به مشتری می گوید که ارسال درخواست را متوقف کند، بلکه مشخص می کندکه چه زمانی میتواند درخواست دیگر خود را ارسال نماید.
چه چیزی باعث خطای 429 Too Many Requests می شود؟
در حقیقت، خطای 429 Too Many Requests به لحاظ فنی یک خطا نیست بلکه پاسخی از یک سرور، رابط برنامه نویسی برنامه (API)، یا افزونهای است که به برنامه مشتری میگوید که ارسال درخواست را متوقف کند. زیرا در حال حاضر منابع کافی برای پذیرش آن را ندارند. منظور از برنامه مشتری معمولاً وبسایت یا اپلیکیشن است، اما میتواند به هر کاربر (افرادی از جمله مدیر سایت یا بازدیدکننده یا هکر سایت) اشاره کند. به عنوان مثال، اگر کاربر سعی کند در مدت زمان کوتاهی به یک صفحه در وبسایت شما دسترسی پیدا کند، سرور شما ممکن است خطای Too Many Requests را ارسال نماید. در صورت تلاش مکرر برای ورود به سیستم، که در آن یک هکر به طور پیوسته سعی میکند وارد سایت شما شود، محدودیت نرخ یک اقدام امنیتی حائز اهمیت است. به عنوان مثال، اگر بیش از 50 درخواست از یک آدرس IP در مدتی یک دقیقه دریافت شود، PayPal Sandbo آن IP را برای پنج دقیقه مسدود میکند.
چه چیزی باعث خطای 429 Too Many Requests می شود؟
در حالی که پاسخ 429 ممکن است جنبه مجازات و تنبیه داشته باشد، اما در واقع یک اقدام محافظتی در برابر سوءاستفاده عمدی یا تصادفی کاربران از منابع سرور (یا API، افزونه یا سرویس دیگر) است. این اقدام برای جلوگیری از درخواست های زیاد در مدت کم طراحی شده است که سرور یا سرویس دیگری را که قرار است توسط بسیاری از وب سایت ها و برنامه ها به اشتراک گذاشته و مصرف شود، تحت فشار قرار دهد. بنابراین، با کنترل تعداد و زمانبندی درخواستها، محدودیتهای نرخ از بروز مشکلات جلوگیری مینماید.
اگر به دلایل دیگر خطای 429 Too Many Requests را در سایت خود مشاهده میکنید، ممکناست نیاز باشد تعداد درخواستهای سرور یا تماسهای API را که انجام میشود، کاهش دهید. مراحلی که در ادامه مورد بحث قرار می گیرند، اصلاحات کلی برای خطای 429 Too Many Requests هستند. در صورتی که سایت وردپرس دارید، ممکن است به یک راه حل خاص وردپرس نیاز داشتهباشید. زیرا خطاهای رایج وردپرس متفاوت است. همچنین آموزش وردپرس هم دارای شرایط خاص خود است.
چگونه خطای HTTP 429 را رفع کنیم؟
منتظر بمانید تا درخواست دیگری ارسال گردد.
به نسخه بک آپ سایت( که قبلا آن را گرفته اید و در غیر این صورت به تنظیمات اولیه قالب) بازگردید
حد درخواستهای خود را تعیین کنید.
با ارائه دهنده سرور و هاست خود تماس بگیرید.
بیشتر مراحل گفته شده بر اجتناب از خطای Too Many Requests تمرکز دارند، نه بر حل آن. با این وجود معرفی هر کدام خالی از لطف نیست.
منتظر بمانید تا درخواست دیگری ارسال گردد
ساده ترین راه برای رفع خطای HTTP 429 صبر کردن برای ارسال درخواست دیگر است. اغلب، این کد وضعیت با یک سربرگ «Retry-after» ارسال می شود که مدت زمانی را برای صبر کردن قبل از ارسال درخواست دیگر مشخص می کند. ممکن است فقط چند ثانیه یا چند دقیقه را مشخص کند.
به نسخه بک آپ خود باز گردید.
اگر سر صفحه «Retry-after» ارسال نشد و نمی دانید قبل از امتحان چقدر باید منتظر بمانید، نیاز است تا cms خود را به نسخه پشتیبان بازگردانید. با این کار به احتمال بسیار بالایی مشکل حل خواهد شد. با انجام این کار شما از ابتدا باید نرخ درخواست سایت خود را بررسی کنید. با این وجود ممکن است شما همچنان با ارور 429 مواجه شوید که برای رفع مشکل چند ثانیه تا چند دقیقه منتظر بمانید و مجددا برای ورود به سایت اقدام کنید.
حد درخواست های خود را تعیین کنید
در مبحث خطای 429 Too Many Requests باید حد درخواست های خود را تعیین کنید. فیلتر کردن، فرآیند محدود کردن تعداد درخواستهایی است که یک برنامه میتواند در مدت زمان معین ارسال کند. اگر از این حد تجاوز شود، درخواست های سرور یا API معمولاً حذف می شوند یا با داده های حافظه پنهان انجام می شوند. در حالی که این رویکرد اغلب توسط APIها یا پلتفرم های شخص ثالث برای جلوگیری از فراتر رفتن محدودیت های برنامه های مشتری استفادهمی شود، می تواند برای محدودکردن مصرف خود شما از APIهای شخص ثالث یا منابع سرور نیز مفید باشد. در واقع، شما میتوانید برای جلوگیری از فراتر رفتن از محدودیتهای سرور، API یا سایر سرویسهایی که استفاده میکنید، محدودیت شدیدتری را برای سایت خود اعمال کنید. اگر از یک API پر هزینه مانندTwitter API استفاده میکنید و نمیخواهید که از حد خود فراتر بروید، این کار ایده خوبی است.
برای رفع خطای 429 Too Many Requests با ارائه دهنده تماس بگیرید
تماس با ارائه دهنده های سرور و هاست همیشه گزینه ای برای رفع هرگونه خطا در وب سایتان به حساب می آید. البته این کار باید یکی از آخرین گزینه هایی باشد که آن را امتحان میکنید. اگر مراحل بالا را امتحان کرده اید و همچنان خطای 429 Too Many Requests را میبینید، ممکن است علت از سرور شما باشد و نه وبسایت شما. همچنین ممکن است میزبان شما درخواست های سرویس ها یا پلتفرم های شخص ثالث خاصی را مسدود کند، مانند کنسول جستجویGoogle، که درخواست های زیادی را به وب سایت ها ارسال می کند. با تماس با ارائه دهنده، ممکن است این مشکل برطرف شود یا شما را به خوبی راهنمایی نمایند.
در چه شرایطی می توان از خطای 429 Too Many Requests اجتناب کرد ؟
در چه شرایطی می توان از خطای 429 Too Many Requests اجتناب کرد ؟
ساده ترین راه برای جلوگیری از این خطا، کاهش تعداد درخواستهای ارسال شده در مدت زمان کوتاه است. سرور تعداد درخواست هایی را که در هر واحد زمانی ارسال می کنید پیگیری و آن را اجرامی کند و در صورتی که از حد تعیین شده تجاوز کند آن را مسدود خواهد کرد. به یاد داشته باشید، دریافت ارور 429 Too Many Requests لزوماً یک خطا نیست، این اتفاق روشی است که سرور به شما می گوید میزان درخواست های شما بسیار بالا است و قادر به پذیرش و اجرای تمام آن ها نیست. اگر اینطور است، کاری از دست شما بر نمی آید و تنها ارائه دهنده هاست و سرور شما است که میتواند مشکل را برطرف کند.
کلام آخر
چه سایت شما تحت تأثیر خطای 429 باشد یا خطایی دیگر، دانستن اینکه چطور این خطاها را رفع کنید، می تواند کسب و کار شما را نجات دهد. خطای وردپرس 429 Too Many Requests زمانی فعال می شود که یک کاربر (یا اسکریپت) درخواست های زیادی از سرور داشته باشد. این اخطار یک گزینه ی امنیتی است، که برای محافظت از سایت شما در برابر حملات انکار سرویس توزیع شده (DDOS) طراحی شده است.
