【问题标题】:ASP.NET Core IIS Deployment Issue aspnet-prerenderingASP.NET Core IIS 部署问题 aspnet-prerendering
【发布时间】:2016-12-25 14:24:54
【问题描述】:

我在将带有 Angular2 的 ASP.NET Core 应用程序部署到 IIS 时遇到问题。

到目前为止的步骤 -

  • 在this 之后使用 aspnetcore-spa 生成器创建了一个入门 Angular2 asp.net 核心项目
  • 使用了一些 Angular 代码,并且能够在 VS2015 和命令行中进行调试。此时代码正在运行
  • 在this 之后设置了 IIS
  • 使用VS2015发布到文件夹。创建了一个新的 IIS 应用程序并指向该文件夹。
  • 指向浏览器并出现错误


处理您的请求时出错。

日志文件显示

失败:Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0] 发生未处理的异常:调用节点模块失败并出现错误:要使用预渲染,您必须安装“aspnet-prerendering”NPM 包。 System.Exception:调用节点模块失败并出现错误:要使用预渲染,您必须安装“aspnet-prerendering”NPM 包。

带有 aspnet-prerendering 的 node_module 文件夹位于输出文件夹中。

最后一件事要测试 IIS 是否正常工作,我从 .NET 核心的 VS 模板创建了一个基本项目,并且能够让 IIS 为基本应用程序工作。没有 npm 依赖。

感谢您对此的任何指导。

【问题讨论】:

  • 在更多的挖掘和尝试了一堆东西之后 - 我最终为应用程序池设置了我的凭据并且它起作用了。我以为我早些时候尝试过但没有成功,但可能是与我做过的其他事情的结合。我也能够使用 LocalSystem - 但不能使用 ApplicationPoolIdentity。只是为了好玩,我还在输出文件夹中的 node_modules 中重命名了 aspnet-prerendering 文件夹,即使在我的用户下运行时也会破坏它(认为它可能是路径的东西)。安全权限在输出文件夹中是完全开放的,所以目前不确定,但必须是安全的事情。

标签: npm asp.net-core


【解决方案1】:

我遇到了同样的问题,在尝试解决错误几个小时后,我从 VS2015 模板创建了一个新的 ASP.NET Core Web 应用程序,并复制了所有 .json 和 webpack 配置文件,包括 ClientApp 和 typings 文件夹进去。我还从我的项目中更新了 Views 文件夹。我没有替换 web.config(我认为 web.config 可能会导致问题,但我不确定)。在这些操作之后,一切似乎都正常工作了。

另外,由于this 问题,我将<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> 添加到我的.xproj 文件中。

【讨论】:

    猜你喜欢
    • 2019-06-28
    • 2019-02-23
    • 2019-06-19
    • 1970-01-01
    • 2019-10-09
    • 1970-01-01
    • 2018-05-09
    • 1970-01-01
    • 2011-02-15
    相关资源
    最近更新 更多