gpt4 book ai didi

c# - 如何在 ASP.NET MVC3 中通过 HTTPS 提供静态文件(在 ~/Content 中)

转载 作者:太空宇宙 更新时间:2023-11-03 16:07:32 25 4
gpt4 key购买 nike

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

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

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

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

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

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

因为页面的协议(protocol)是https,所以浏览器正在请求https://localhost:5300/Areas/Admin/Content/js/jquery.js(自然)。使协议(protocol)成为 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 文件?

最佳答案

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

关于c# - 如何在 ASP.NET MVC3 中通过 HTTPS 提供静态文件(在 ~/Content 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18795677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com