为什么Bootstrap主题没有在nodejs上使用https模块上传?

时间:2015-08-29 11:35:07

标签: css node.js twitter-bootstrap

我使用bootstrap和nodejs创建了一个Web界面页面。当我使用http模块时,我的界面在浏览器中显示得非常好,但是当我使用https打开它时,主题并不像其他主题一样出现(导航栏没有& #39; t出现以及许多其他功能)。 我使用这些链接进行引导:

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

我还用过:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>

在浏览器控制台中,我遇到了以下错误:

[blocked] The page at 'https://192.168.43.155:4000/signin' was loaded over HTTPS, but ran insecure content from 'http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css': this content should also be loaded over HTTPS.



[blocked] The page at 'https://192.168.43.155:4000/signin' was loaded over HTTPS, but ran insecure content from 'http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js': this content should also be loaded over HTTPS.

3 个答案:

答案 0 :(得分:1)

如果报告任何错误,请查看您的浏览器控制台。您可能会在http网站上附加https cdn的脚本和样式,因此您的浏览器会阻止它,因为它违反了安全性。

而不是http://maxcdn.bootstrapcdn.com/...使用https://maxcdn.bootstrapcdn.com/...作为引导脚本和样式的来源。然后它将适用于'http'和'https'网站。

答案 1 :(得分:1)

因此,您的问题在于,当您进行https呼叫时,文件不安全,当您的网站运行HTTPS时,所有链接都应该受到保护。

因此,CDN相关链接的简单解决方案,它只是删除http:和默认情况下的所有链接将使用客户端网站默认使用的内容。

所以:

<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

答案 2 :(得分:1)

如果你还在寻找答案,这就是我发现的。 我刚才有同样的问题。我解决它的方式是,我发现所有外部链接都以http://开头,并将其替换为//。例如,http://bootstrap.com/.../已更改为//bootstrap.com/.../。这样它将根据连接选择要应用的协议。

希望这会有所帮助。