我想在IIS上用IIS管理器上传我自己的asp.net网站。但是当我这样做时,我得到以下错误

HTTP错误500.19 -内部服务器错误不能被请求的页面 访问,因为该页的相关配置数据为 无效的

模块IIS Web核心 通知未知 处理人尚未确定 错误码0x80070005 Config Error由于权限不足,无法读取配置文件 配置文件\\?\C:\用户\亚索\文档\Visual Studio 2008\网站\WebSite5\web.config

我搜索了很多次这个错误的解决方案,但没有一个解决方案解决了这个错误。

我的IUSR账户有问题。我在web.config的属性中的“组或用户名”中看不到这个帐户。

有什么问题吗?


当前回答

在我的情况下,它只是注释(或删除)anonymousAuthentication属性:

 <security>
     <authentication>
         <!--<anonymousAuthentication enabled="true" />-->
     </authentication>
 </security>

其他回答

尝试安装本SO中提到的IIS的“应用程序开发”子组件

在搜索框中点击“开始按钮”,输入“打开窗口功能” 开或关” 在功能窗口中,单击:“Internet信息” 服务” 点击:“万维网服务” 点击:“应用程序 开发功能” 检查(启用)特性。我都查过了 CGI。

我最终通过删除我的web应用程序的obj文件夹解决了这个问题。重新构建解决方案后,问题就消失了。

安装。net Core Windows Server Hosting包

https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.1

https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/index?tabs=aspnetcore2x&view=aspnetcore-2.1

确保将应用程序池设置为框架的正确版本。您还需要确保您的aspnet、IIS_IUSRS或IUSR用户对应用程序的目录具有读访问权。

我换了我的网。配置文件提供的实际路径比实际路径相对。

<httpPlatform processPath="F:\Projects\.....
instead of 
<httpPlatform processPath="..\approot\web.cmd"