Net6 Core Api(.net6)发布到IIS注意事项及显示HTTP 错误500.19解决方法
Net6 Core Api发布到IIS不同于webapi,依赖框架不同,配置也移至项目内Program.cs
一、发布到指定文件夹,和IIS,不过注意IIS应用程序池选择的是 “无托管代码“
访问接口路径报500.19,原因是所依赖的框架不同,需要下载安装指定的依赖环境(查看第二点)
二、查看项目框架和下载,
下载地址
https://dotnet.microsoft.com/download/dotnet
我这里使用的是.Net6.0,要下载高于此版本的环境
点击你要下载的版本
下载了对应位数的安装
下载完成后可以在控制面板-程序和功能看到
此时运行可能还会报404
需要到发布文件下修改web.config文件(这步有时候需要有时候不需要)
<aspNetCore processPath="dotnet" arguments=".\Signin.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess">
<environmentVariables>
<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
</environmentVariables>
</aspNetCore>
成功访问
执行点击登录后可能会出现下面错误
如果出现下面这个错误就是因为没有执行上步修改webconfig文件(修改后这个错误就没了)
出现错误2
原因:其实就是说明我们这个网站需要认证了才能访问
解决:
查看该网页使用的是什么身份认证(默认是匿名身份验证)
发现是启用的是匿名身份验证
匿名身份验证表示不需要登录都可以访问
右键编辑发现他选择的特定用户是IUSR
查看IUSR是否有权限(右击这个网页编辑权限)
查看并没有这个用户
解决一: 我们可以让他和应用程序池使用同一个用户
点击发布网页=》打开身份验证=》右键匿名身份验证编辑
选择应用池标志按钮
查看应用程序池使用的用户是哪个
标识其实就是用户
再次浏览发现还是不行
那么修改一下程序池的用户,改一个级别高的
选择localsystem,这个权限很高的
再次刷新网页进行浏览
此时本地又报一个新错
错误信息
An unhandled exception occurred while processing the request.
SqlException: 无法打开登录所请求的数据库 "ProgramTest"。登录失败。
用户 'NT AUTHORITY\SYSTEM' 登录失败。
InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure' to the 'UseSqlServer' call.
问题出现原因:
无法打开登录所请求的数据库 “xxxxxx”。登录失败。
用户 'IIS APPPOOL\xxxxxxxxxxxx 登录失败。
或者这样的错误信息:
异常详细信息: System.Data.SqlClient.SqlException: 用户 ‘IIS APPPOOL\xxxxxxxx’ 登录失败。
在Visual Studio 2010调试模式下,没有问题,配置到IIS就出错.原因是权限问题.
在IIS中默认是不允许window集成登录的,改为帐号密码登录就没有问题了,服务器名最好填写ip地址/实例名这样的格式,以免报错.
1.若应用程序的连接字符串是windows集成登录 ,将其改成用户名密码登录
所以将连接字符串改为使用用户名登录即可
//"SystemCenterProject": "Data Source=.;Initial Catalog=ProgramTest;Integrated Security=True;TrustServerCertificate=true",
"SystemCenterProject": "Data Source=.;Initial Catalog=ProgramTest;User ID=sa;Pwd=123456;TrustServerCertificate=true"
连接字符串并且必须加‘TrustServerCertificate=true’,否则会报错
Microsoft.Data.SqlClient.SqlException 证书链是由不受信任的颁发机构颁发的 - 知乎 (zhihu.com)
发布网页运行成功,并且登录成功
解决二: 使用特定用户账号 (不做参考-不正确可能)
不使用应用程序池的用户。
选择特定用户
编辑用户名为IUSR
将相应程序池设置成原先默认的
程序池标识改为原先默认
确定后,点击相应应用程序池回收
网站重新启动,然后浏览
Net6 Core Api(.net6)发布到IIS注意事项及显示HTTP 错误500.19解决方法的更多相关文章
- Asp.Net Core子应用由于配置中重复添加模块会引起IIS错误500.19
ASP.NET Core已经从IIS中解耦,可以作为自宿主程序运行,不再依赖IIS. 但我们还是需要强大的IIS作为前置服务器,IIS利用httpPlatformHandler模块来对后台的一些web ...
- Net Core子应用由于配置引起IIS错误500.19
Asp.Net Core子应用由于配置中重复添加模块会引起IIS错误500.19 ASP.NET Core已经从IIS中解耦,可以作为自宿主程序运行,不再依赖IIS. 但我们还是需要强大的IIS作为前 ...
- IIS发布网站浏览之后看到的是文件目录 & Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法 & App_global.asax.pduxejp_.dll”--“拒绝访问。 ”
Q:IIS发布网站浏览之后看到的是文件目录 A:它出现了一个说到.NET4.0 更高框架什么的错误,所以我将 .NTE CRL版本由4.0改为2.0了,改为2.0后就出现了只能浏览文件目录了.改为4. ...
- asp.net mvc项目使用spring.net发布到IIS后,在访问提示错误 Could not load type from string value 'DALMsSql.DBSessionFactory,DALMsSql'.
asp.net mvc项目使用spring.net发布到IIS后,在访问提示错误 Could not load type from string value 'DALMsSql.DBSessionFa ...
- [代码]--IIS发布网站浏览之后看到的是文件目录 & Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法 & App_global.asax.pduxejp_.dll”--“拒绝访问。 ”
Q:IIS发布网站浏览之后看到的是文件目录 A:它出现了一个说到.NET4.0 更高框架什么的错误,所以我将 .NTE CRL版本由4.0改为2.0了,改为2.0后就出现了只能浏览文件目录了.改为4. ...
- 关于 IIS 上运行 ASP.NET Core 站点的“HTTP 错误 500.19”错误
昨天回答了博问中的一个问题 —— “HTTP 错误 500.19 - Internal Server Error dotnetcore”,今天在这篇随笔中时候事后诸葛亮地小结一下. 服务器是 Wind ...
- 针对windowsserver 创建iis站点访问出错的解决方案(HTTP 错误 500.19 - Internal Server Error)
错误如下: 服务器错误 Internet信息服务 7.0 错误摘要HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 详 ...
- win server2012r2上发布网站常见错误 "HTTP 错误 500.19 请求的页面的相关配置数据无效" 解决办法
HTTP 错误 500.19 - Internal Server Error无法访问请求的页面,因为该页的相关配置数据无效. 问题“详细错误信息模块 IIS Web Core通知 BeginReque ...
- win10 iis部署后 浏览目录报错 500.19
错误摘要HTTP 错误 500.19 - Internal Server Error无法访问请求的页面,因为该页的相关配置数据无效.详细错误信息模块 IIS Web Core 通知 BeginReq ...
- 部署到IIS报错:HTTP错误500.19,错误代码0x800700d
title=部署到IIS报错:HTTP错误500.19,错误代码0x800700d. 用vs直接运行网站没问题,部署到IIS就报错,由此可知应该是IIS中不支持网站相关配置. 查找发现在web.c ...
随机推荐
- .NET技术与企业级解决方案研究应用
分布式缓存框架 Microsoft Velocity:微软自家分布式缓存服务框架. Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度. Redis:是一个高性能的KV ...
- 连表操作join 子查询 SQL补充 数据库软件navicat pymysql模块
目录 多表查询的两种方法 方式1:连表操作 方式2:子查询 SQL补充知识点 1.分组之前字段拼接 concat concat_ws 2.SQL执行判断条件 exists 3.表相关SQL补充 修改表 ...
- Vue快速上门(3)-组件与复用
VUE家族系列: Vue快速上门(1)-基础知识 Vue快速上门(2)-模板语法 Vue快速上门(3)-组件与复用 01.component组件 1.1.component基础知识 组件是可以复用的V ...
- 前端HTML不使用flash兼容IE浏览器播放视频
前言:最近公司项目上有个需求就是在IE8上不使用flash技术来去实现视频播放 分析:IE8不支持HTML5,所以不能使用video标签,在非IE的浏览器可以使用video标签 目录 我的解决 DEM ...
- openresty package path
openresty lua_package_path 是整个openresty最基础的功能,不理解 path就无法做项目,更无法写框架. 先看下文档lua_package_path https://g ...
- $_GET方法踩坑
背景 写代码时,遇到一个奇怪的问题:小程序卡券解码接口老是报解码失败,苦寻了一个小时,发现原来是url参数经过thinkphp的I方法被过滤掉,而且涉及到PHP原生的$_GET 原因 I方法底层是原生 ...
- JUC源码学习笔记7——FutureTask源码解析,人生亦如是,run起来才有结果
系列文章目录和关于我 一丶我们在哪里会使用到FutureTask 基本上工作中和Future接口 打交道比较多,比如线程池ThreadPoolExecutor#sumbit方法,返回值就是一个Futu ...
- day05-Vue02
Vue02 7.修饰符 7.1基本说明 修饰符(Modifiers)是以.指明的后缀,指出某个指令以特殊方式绑定 官方文档:修饰符 Vue中的修饰符有: 事件修饰符 按键修饰符 系统修饰符 事件修饰符 ...
- python进阶之路15 之异常处理、生成器相关
异常捕获处理 1.异常 异常就是代码运行报错 行业术语叫bug 代码运行中一旦遇到异常会直接结束整个程序的运行 我们在编写代码的过程中要尽可能避免 2.异常分类 语法错误 不允许出现 一旦出现立刻改正 ...
- 2023牛客寒假算法基础集训营2 ABCDEFHJKL
比赛链接 A 题解 知识点:数学. 用 \(n\) 减去区间1的端点得到匹配的一个区间,求一下与区间2的交集. 一个小公式,两区间 \([L_1,R_1]\) 和 \([L_2,R_2]\) 的交集长 ...