رفع خطای 502 Bad Gateway در برنامه‌های NET.


خطای 502 Bad Gateway در برنامه‌های دات‌نت معمولاً به این معناست که سرور پروکسی یا gateway دریافت‌کننده درخواست، پاسخی نامعتبر از سرور مقصد دریافت کرده است. دلایل این خطا می‌تواند شامل مشکلات سرور مقصد، مشکلات شبکه، پیکربندی نادرست وب‌سرور (مثل IIS)، یا باگ‌های برنامه‌نویسی باشد.

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

به‌صورت پیش‌فرض، برنامه‌های NET. روی آدرس http://0.0.0.0:80 اجرا می‌شوند. اگر شما این آدرس را برای مثال به http://localhost:5000 تغییر داده باشید، خطای 502 را مشاهده خواهید کرد. برای رفع این مشکل، می‌توانید در فایل Program.cs از متد UseUrls استفاده کنید:

کپی
.UseUrls("http://0.0.0.0:5000");

همان‌طور که مشاهده می‌کنید، localhost را باید به 0.0.0.0 تغییر دهید. حالا برای استقرار این برنامه، باید از دستور liara deploy --port 5000 استفاده کنید تا برنامه‌ی شما روی پورت 5000 اجرا شود.

برای اطلاعات بیشتر می‌توانید به این مستندات مراجعه کنید.