Webservice,JS,CSS不支持HTTPS(安全页面)

时间:2013-02-05 19:45:12

标签: javascript asp.net css http https

在我的网站上,我想要仅在我的网站页面中使用https" securepage.aspx"

我的网站看起来像http://www.test.com/

我的安全页面将是https://www.test.com/securepage.aspx

JS / Images 等所有资源都位于资产文件夹中,而我的 webservices 位于commonwebservice文件夹的root上。

http://www.test.com/assets/js/

http://www.test.com/assets/images/

当我在安全页面上应用https时,该页面确实使用了 chrome浏览器中的任何CSS和JS文件,即我的整个页面搞砸了,即使我已经使用了CSS和JS的绝对URL。

在这种情况下,我的网络服务在所有浏览器上给出500错误。

任何人都可以建议并指导我处理这种情况的最佳方法。

1 个答案:

答案 0 :(得分:1)

您所看到的行为令人沮丧,但却是正确的。使用HTTPS提供页面时,您还必须在HTTPS下提供所有链接的内容。

检查我们的协议相对网址(http://paulirish.com/2010/the-protocol-relative-url/

基本上,它们看起来像这样:

<img src="//domain.com/img/logo.png">

如果您的网页是HTTP,则资源会在HTTP下加载,如果是HTTP,则会在HTTPS下安全加载。

您必须将服务器设置为在两者之下提供CSS / JS / WS内容,但是一旦您这样做,上面的相对链接将允许您在两者之间无缝切换。因此,对于主页面中的链接,使用相对格式,然后无论内容页面是在HTTP还是HTTPS下运行都无关紧要,资源将从与页面相同的协议中提取。