本地IIS 8.5 - 500.19 0x8007000d错误的简单ASP.NET Razor页面

时间:2018-05-23 16:07:25

标签: asp.net iis razor

我已经构建了完美的样本Razor网页,我决定将其部署在Windows 8.1上启用的本地IIS上。 (IIS 8.5)。

我通过将相关文件复制到Inetpub子文件夹的文件系统使用了发布功能。

当我尝试访问该网页时出现此错误:

The requested page cannot be accessed because the related configuration data for the page is invalid.
Error Code: 0x8007000d
Config Error:
Config File: (correct path) 

webconfig很短,但页面简单 - 可能足够长?

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\myapp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
  </system.webServer>
</configuration>

我在这里和其他谷歌退回的材料进行了相当彻底的搜索,总体上没有任何帮助。 我很确定我已经为IIS安装的所有相关组件已经安装好了。 所有配置文件都已正确形成。 安全性很好 - 我可以使用webconfig内容并获得一些不同的错误,表明IIS可以访问配置文件。

唯一令我惊讶的是,有时当我在IIS上访问页面上的各种配置图标时,我会收到如下错误:

即。 for .NET Profile: 执行此操作时出错。 细节:(这里没有写) 文件名:\?\ C:\ inetpub \ wwwroot \ mypagefolder \ web.config 错误:(没有写在这里)

我的web.config是否缺少某些部分?

编辑:我还将已发布的应用程序放在用于其他应用程序的其他IIS服务器上,结果是相同的,这让我更倾向于相信s.t.应用程序发布过程或s.t.是错误的。非常奇怪

2 个答案:

答案 0 :(得分:3)

查看您的web.config,发现您正在尝试部署ASP.NET Core网站。它需要

  1. 托管服务器上安装的.NET Core Hosting Bundle
  2. 应用程序池.NET CLR版本设置为“无托管代码”
  3. 确保Application Pool Identity用户对已发布的文件夹具有读取权限。
  4. 详情请查看: https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.0

    我建议首先检查应用程序池的.NET CLR版本,还检查AppPool Identity是否对已发布文件夹具有读取权限

答案 1 :(得分:0)

我在Windows 2012 Server中遇到了同样的问题。尽管我已经安装了SDK 2.1,但只有在安装运行时和主机捆绑软件时,它才能正常工作。 https://www.microsoft.com/net/download/dotnet-core/2.1

重要的是要提及该选项,我必须单击“找不到所需文件?在.NET Core 2.1下载中找到更多内容。”。

默认情况下不会显示此页面。