HTTPS 重定向不适用于页面内加载的图像
HTTPS Redirect not working for images loaded within page
我知道,另一个 HTTPS 重定向不起作用的问题。我已经研究了一段时间,无法弄清楚。
我的 web.config 中有以下重定向规则,用于将 ALL HTTP 流量重定向到 HTTPS
<rule name="HTTPS Redirect" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Found" />
</rule>
这项工作很棒,无论我在 HTTP 上访问什么 URL,它都会重定向到 HTTPS。除了从页面本身加载的图像之外的所有内容。查看下图:
我遇到了混合内容错误,因为从我的站点加载的所有图像,都是作为 HTTP 加载的。如果我右键单击其中一张图片,并在新选项卡中打开,图片将以 HTTPS 格式打开。如果我将图像 URL 编辑为 HTTP 并点击 return,它会重定向到 HTTPS 并通过 HTTPS 加载图像。但是由于某种原因,当通过页面加载图像时,它正在设法通过 HTTP 加载??!
任何人都可以就这里发生的事情提供任何建议吗?
因此,对于 HTTPS 站点内的内容,浏览器不再关心重定向链的末端连接是什么。如果文件的原始连接是 HTTP,那么它会将其标记为不安全并抛出混合内容警告,即使它实际上终止于 HTTPS。
在我可以修复所有 HTTP 实例之前,作为临时修复,我已经实施了 header
Content-Security-Policy: upgrade-insecure-requests
这会导致浏览器将站点内的 HTTP 链接升级为 HTTPS,这解决了我的混合内容警告。
我知道,另一个 HTTPS 重定向不起作用的问题。我已经研究了一段时间,无法弄清楚。
我的 web.config 中有以下重定向规则,用于将 ALL HTTP 流量重定向到 HTTPS
<rule name="HTTPS Redirect" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Found" />
</rule>
这项工作很棒,无论我在 HTTP 上访问什么 URL,它都会重定向到 HTTPS。除了从页面本身加载的图像之外的所有内容。查看下图:
我遇到了混合内容错误,因为从我的站点加载的所有图像,都是作为 HTTP 加载的。如果我右键单击其中一张图片,并在新选项卡中打开,图片将以 HTTPS 格式打开。如果我将图像 URL 编辑为 HTTP 并点击 return,它会重定向到 HTTPS 并通过 HTTPS 加载图像。但是由于某种原因,当通过页面加载图像时,它正在设法通过 HTTP 加载??!
任何人都可以就这里发生的事情提供任何建议吗?
因此,对于 HTTPS 站点内的内容,浏览器不再关心重定向链的末端连接是什么。如果文件的原始连接是 HTTP,那么它会将其标记为不安全并抛出混合内容警告,即使它实际上终止于 HTTPS。
在我可以修复所有 HTTP 实例之前,作为临时修复,我已经实施了 header
Content-Security-Policy: upgrade-insecure-requests
这会导致浏览器将站点内的 HTTP 链接升级为 HTTPS,这解决了我的混合内容警告。