2

我有一个 ASP.NET MVC3 应用程序,我刚刚添加了一个区域。区域内的链接(到图像、JavaScript 文件、CSS 等)默认为 https。但是,MVC 似乎并未~/Content通过 https 提供目录内的静态内容。

我仔细研究了互联网文档,但没有发现有关 MVC~/Content如何以不同方式处理目录的信息,或者如何让它通过 https 提供静态文件。

我希望它像 Web.config 条目一样简单,上面写着“允许通过 https 提供静态文件”,但我没有发现这样的东西。

我想出的唯一选择是编写一个自定义控制器来提供我的静态内容,但这似乎非常错误。我错过了什么?

更新:为了回答乔在下面的问题,视图本身是通过 https 提供的。对于静态内容,例如 JavaScript 文件,我使用的是没有协议或域的绝对 URL。例如:

<script "/Areas/Admin/Content/js/jquery.js"></script>

因为页面的协议是https,所以浏览器正在https://localhost:5300/Areas/Admin/Content/js/jquery.js(自然地)发出请求。将协议设为 http 并正确提供该文件:将其设为 https,我得到一个错误。

更新:我愚蠢地没有仔细阅读错误。里面有更多的细节,但它仍然让我感到困惑。我尝试访问时遇到的错误https://localhost:5300/Areas/Admin/Content/js/jquery.js是:

Parser Error Message: An error occurred loading a configuration file: 
Failed to start monitoring changes to
'C:\Users\ethan\Documents\gitwork\SampleWebSite\admin\content\web.config'
because access is denied.

为什么要在该目录中寻找 Web.config 文件?

4

1 回答 1

0

一个简单的解决方案是不要使用“~”

于 2017-04-05T13:45:01.733 回答