如何解决Plesk面板中ASP.NET Core 7项目端口占用启动失败问题
修复ASP.NET Core 7项目在Plesk中端口5000占用的错误
解决方案1:更换Kestrel监听端口
修改项目配置,让Kestrel使用未被占用的端口:
- 打开
appsettings.json,添加Kestrel配置段:
"Kestrel": { "EndPoints": { "Http": { "Url": "http://127.0.0.1:5001" } } }
- 或者在
Program.cs中直接指定端口:
var builder = WebApplication.CreateBuilder(args); builder.WebHost.ConfigureKestrel(serverOptions => { serverOptions.ListenLocalhost(5001); });
修改后重新发布部署即可。
解决方案2:终止占用5000端口的进程
通过命令行定位并杀掉占用端口的进程:
- 在Plesk的「工具与设置」中打开终端,或通过远程桌面连接主机,执行命令:
netstat -ano | findstr :5000
- 从输出中找到
LISTENING状态对应的PID(最后一列数字),执行终止命令:
taskkill /PID <你的PID> /F
替换<你的PID>为实际数字,/F参数用于强制终止进程。
解决方案3:配置Plesk的ASP.NET Core托管设置
在Plesk面板中调整托管规则,避免端口冲突:
- 进入对应网站的「ASP.NET Core设置」
- 将「启动模式」设置为进程内(InProcess),此模式下应用直接使用IIS端口,无需Kestrel绑定独立端口
- 若使用进程外模式,确保「应用程序URL」设置为Plesk分配的端口,而非默认的5000
内容的提问来源于stack exchange,提问作者Aliparsa
相关产品推荐
相关产品推荐

