ASP.NET Core 使用IIS作为Web服务器,部署在IIS上
所做的步骤部署完毕后,启动网站
出现
An error occurred while starting the application.
.NET Core X64 v4.1.1.0 | Microsoft.AspNetCore.Hosting version 1.1.0-rtm-22752 | Microsoft Windows 6.3.9600
解决方案
在网站根目录下新建logs文件夹,再次启动网站,系统会把报错信息下入logs文件夹的日志中去
可以查看日志的错误信息
进程模型
网站对应的应用程序池:高级设置,看到有一个节点叫“进程模型”,修改标示一项,为LocalSystem。
关于默认的LocalSystem 和 ApplicationPoolIdentity的区别,详见https://www.cnblogs.com/zgqys1980/p/3862815.html
System.Data.SqlClient.SqlException (0x80131904)
无法打开登录所请求的数据库 "IdentityServer4_Demo"。登录失败。
用户 'NT AUTHORITYSYSTEM' 登录失败。
如果我们使用了sqlserver数据库,应用程序默认会使用数据库中的"NT AUTHORITYSYSTEM"这个帐号进行登录
解决方案:
我的电脑-->右键-->管理-->本地用户和组
选择“组”-->双击Administrators-->单击“添加”-->单击“高级”-->单击“立即查找”-->在下面的列表中选择Network Service用户-->两次单击“确定”-->加入。
给予NT AUTHORITYSYSTEM权限,使用windows验证方式登录数据库后->安全性->登录名,找到该登录名
右键修改,选择服务器角色,授予该登录名sysadmin这个角色。
至此,问题解决。