【问题标题】:Failed to load resource when using virtual path in IIS? (C# .NET Core + Angular 7)在 IIS 中使用虚拟路径时加载资源失败? (C# .NET Core + Angular 7)
【发布时间】:2019-05-10 09:12:42
【问题描述】:

我有一个 Web 项目,它有一个 C# .NET Core 后端,并且在 wwwroot 目录中构建了 Angular 7 项目。

当我在 IIS 中为这个项目创建一个单独的网站时,它可以工作(假设我将 localhost 添加到主机文件中)。

现在,我应该将我的项目部署为具有默认应用程序池的默认网站中的应用程序。

我将项目添加为虚拟文件夹,然后将其转换为应用程序。

浏览器中的url:localhost/mywebsite/

我刚刚得到一个白色的空白屏幕。后端正常运行,我在 Advanced Rest Client 中对其进行了测试,但是前端遇到了虚拟“/mywebsite”路径的问题。

“加载资源失败:服务器响应状态为 404(未找到)”

wwwroot 中的所有 *.js 文件都有这个问题,css 文件也有。

我尝试了 localhost 网址:

"http://localhost/somejsfile..js"

...它不起作用,但是当我以这种方式添加虚拟路径时:

"http://localhost/mywebsite/somejsfile..js"

我得到了我的 js 文件。

我确定我遗漏了一些明显的东西,因为解决起来不可能那么复杂......我不知道如何让 Angular 应用程序忽略这个虚拟的东西或让 IIS 不破坏应用程序用它。

感谢您的帮助和建议:)

【问题讨论】:

    标签: angular web iis web-deployment


    【解决方案1】:

    它是一个 ASP.net 应用程序这一事实可能正是这里的问题所在。您的应用程序池标识必须具有权限(不一定是 IIS 标识;默认情况下,应用程序池标识是本地网络服务帐户。)您可能还需要在 IIS 计算机上运行 caspol.exe。

    http://msdn.microsoft.com/en-us/library/cb6t8dtz%28v=vs.80%29.aspx

    http://learn.iis.net/page.aspx/50/aspnet-20-35-shared-hosting-configuration/

    %windir%\Microsoft.NET\Framework\v2.0.50727\caspol -m -ag 1. -url "file://\remotefileserver\content$*" 完全信任

    【讨论】:

      猜你喜欢
      • 2014-04-08
      • 1970-01-01
      • 2021-10-14
      • 2014-06-24
      • 2018-10-10
      • 2014-07-06
      • 2015-08-17
      • 2014-07-04
      • 1970-01-01
      相关资源
      最近更新 更多