我有一台安装了WordPress的Ubuntu计算机作为前端。 它可以与我的www.example.com一起使用,并且仅使用HTTPS(如果使用HTTP,则会自动重定向到HTTPS)。 在同一台机器上,我安装了Sails应用服务器(版本0.12)并在端口1337上运行。 我在WordPress上有一个表单,该表单将后命令发送到在sails应用程序上运行的api,但由于使用HTTPS加载了网站/页面,而api没有加载api,因此出现错误。
如果我使用Chrome浏览器访问http://www.example.com:1337/api,则api被激活,并且得到结果。 当我尝试使用https://www.example.com:1337/api时-我收到此错误:
此网站无法提供安全的连接domain.com发送了无效的回复。 尝试运行Windows网络诊断程序。 ERR_SSL_PROTOCOL_ERROR
我的机器上有正确的证书文件,为了指示帆使用HTTPS而不是HTTP,我需要做什么?
谢谢!
答案 0 :(得分:1)
我认为您应该提供一个配置文件,以告知Sails在生产中使用这些证书。在config/local.js
中创建一个文件,其中包含SSL证书的所有路径,或将此代码复制到config/env/production.js
:
var fs = require('fs');
/**
* SSL certificates config file
*/
module.exports = {
ssl : {
ca: fs.readFileSync('/etc/letsencrypt/live/example.com/chain.pem'),
key: fs.readFileSync('/etc/letsencrypt/live/example.com/privkey.pem'),
cert: fs.readFileSync('/etc/letsencrypt/live/example.com/cert.pem')
},
port: process.env.PORT || 443
};
一个小技巧:如果要将呼叫从80端口重定向到443端口,则可以使用NGINX。