我正在开发一个node.js应用程序。它展示了我朋友的艺术。除了一些一般的信息和许多照片,它还包括一个联系形式的人谁想联系他的工作。我希望加密联系人页,以保护通过表单发送的个人数据,但将页面的其余部分保持未加密,以减少页面的加载时间。
我已经成功地创建了一个HTTPS服务器来加密我的整个网站。但我只想为联系页面建立一个加密连接。有人知道如何实现这一点吗?
我想出的一个解决方案是创建两个node.js服务器。一个HTTP服务器和一个HTTPS服务器,然后运行HTTP服务器上的主页和HTTPS服务器上的联系人页。然后,指向联系人页面的链接将包括https。有点像:"https://www.domain.com/contact“。
但不知怎么的,这感觉不像是正确的方式,所以我希望有人有一个更好的解决方案。
谢谢你的帮助!
发布于 2014-11-25 01:06:08
认为HTTPS的性能不如普通HTTP的概念是一个需要消亡的神话。
所有HTTPS的唯一损失就是中间缓存代理,但老实说,除非您知道站点的用户使用的是相对较慢的链接和本地缓存代理,否则我不会因此而失眠。否则,这并不是真正的问题。
与TLS相关的开销可以忽略不计。没有理由不只是通过HTTPS为您的整个站点服务。
一旦通过HTTPS为您的所有内容提供服务,您仍然应该运行一个发出永久重定向的HTTP服务器。最简单的方法就是运行一个单独的Express应用程序:
var http = express();
http.use(function(req, res){
res.redirect(301, 'https://mydomain.com' + req.url);
});
http.listen(80);您的HTTPS服务器也应该启用HSTS。
app.use(function(req, res, next) {
res.set('Strict-Transport-Security', 'max-age=31536000');
next();
});https://stackoverflow.com/questions/27116114
复制相似问题