.NET6 Web应用部署至IIS后出现500.19内部服务器错误求助
解决.NET6部署IIS时HTTP Error 500.19的问题
常见原因及修复步骤
检查ASP.NET Core模块是否安装
打开控制面板→程序→程序和功能→启用或关闭Windows功能,展开Internet Information Services→万维网服务→应用程序开发功能,确保勾选ASP.NET Core模块(对应.NET6版本),完成后执行命令iisreset重启IIS。验证站点文件夹与配置文件权限
- 右键IIS目标站点→管理网站→高级设置,确认物理路径对应的文件夹已给IIS_IUSRS和IUSRS用户添加读取和执行权限。
- 检查站点根目录下的
web.config是否存在语法错误,.NET6标准配置示例如下:
确保<?xml version="1.0" encoding="utf-8"?> <configuration> <location path="." inheritInChildApplications="false"> <system.webServer> <handlers> <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" /> </handlers> <aspNetCore processPath="dotnet" arguments=".\YourApp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" /> </system.webServer> </location> </configuration>processPath和arguments指向正确的应用程序dll文件。
调整应用程序池设置
- 打开IIS应用程序池,找到对应站点的应用池,将*.NET CLR版本*设置为无托管代码。
- 若站点需访问数据库或其他系统资源,可临时将应用程序池身份设置为LocalSystem测试权限问题(测试完成后改回符合安全要求的身份)。
启用日志获取详细错误信息
修改web.config中的stdoutLogEnabled="true",同时确保站点根目录下存在logs文件夹并给IIS_IUSRS用户添加写入权限,访问站点后查看logs目录下的日志文件,定位具体错误点。
内容的提问来源于stack exchange,提问作者Fahad Altaf
相关产品推荐
相关产品推荐

