پورتی که برنامه دات نت قرار است با آن اجرا شود در حال استفاده است امکان اجرای برنامه دیگر نیست Failed to bind to address https://127.0.0.1:5001: address already in use.

5/1/2023 MVC
485

برنامه از از دات نت در حال اجرا داشتم حواسم نبود و vscode رو بستم و مرورگر رو هم بستم ،‌سیستم عامل لینوکس هست ،‌پروژه ای دیگر رو در vscode بازکردم که اجرا کنم و بعد از دستور dotnet run  این خطا اومد 

Failed to bind to address https://127.0.0.1:5001: address already in use.

که پورت در حال استفاده است

 

 

در داخل ویندوز با ایکون iis express که کنار ساعت ویندوز هست میشود پورتی که iis  از آن استفاده میکند را متوقف کرد ،‌یک راه حل دیگه اینکه در تنظیمات پروژه پورتی که قرار هست برنامه دات نتی از آن استفاده کند را تغییر دهیم که این مورد در پروژه هایی که در دات نت ۷ ایجاد میشوند برطرف شده، در این احوالات من میخواستم پورتی که قبلا استفاده شده و الان هیچ استفاده از آن نمیشود را ببندم  

دستور به این صورت بود.

lsof -i: <port number>

مثلا برای برنامه های که در پورت 5001 اجرا میشو مینویسم 

lsof -i:5001

در این حالت PID یا همان ای دی مربوط به پروسه  را به شما نشان خواهد داد و میتوانید با دستور زیر با استفاده از ID پروسه آن را ببندید

kill -9 <process number>

مثلا از کد اول من ID پروسه 9660 به دست آمد که به این صورت پورت ازاد شد

kill -9 9660