资源不是从Https - SecuritySwitch自动加载的

时间:2012-02-02 08:51:50

标签: asp.net ssl https securityswitch

我从旧的SecureWebPages升级,通过web.config自动切换Http和Https内容。

出于某些奇怪的原因,有以下内容:

<link type="text/css" href="assets/css/style.css" rel="stylesheet" />

不再自动从相应的https位置加载。 Google Chrome中的控制台向我显示了这一点:

The page at https://website.com/UserAccess.aspx ran insecure content from http://website.com/assets/css/style.css.

当我使用较旧的SecureWebPages时,此行为不存在。在过去,上面的CSS语句工作正常,没有任何错误。

我的web.config:

<securitySwitch mode="RemoteOnly">
<paths>
  <add path="~/Register.aspx"/>
  <add path="~/SSL.Master"/>
</paths>

我的配置有什么问题吗?请指教。谢谢!

1 个答案:

答案 0 :(得分:4)

你需要告诉SecuritySwitch忽略你的CSS文件夹,甚至是整个Assets文件夹,如果它还包含图像等。以下是您可以添加到assets文件夹的securitySwitch部分的路径。

<securitySwitch mode="RemoteOnly">
<paths>
  <add path="~/Register.aspx"/>
  <add path="~/assets/" security="Ignore"/>
</paths>
</securitySwitch>

这将告诉SecuritySwitch忽略assets文件夹及其下的所有内容。此外,您的主文件路径不执行任何操作,因为.master文件永远不会提供给浏览器。

我希望这有帮助!