ssl - Sails JS API SSL/https 支持

标签 ssl sails.js

我有一台安装了 WordPress 的 Ubuntu 机器作为我的前端。 它适用于我的 www.example.com 并仅使用 HTTPS(如果您使用 HTTP,您将被自动重定向到 HTTPS)。 在同一台机器上,我安装了 sails 应用程序服务器(版本 0.12)并在端口 1337 上运行。 我的 WordPress 上有一个表单,该表单向在 sails 应用程序上运行的 api 发送发布命令,但我收到错误消息,因为站点/页面是使用 HTTPS 加载的,而 api 没有。

如果我使用 Chrome 访问 http://www.example.com:1337/api然后 api 被激活,我得到了结果。 当我尝试使用 https://www.example.com:1337/api - 我收到此错误:

此站点无法提供安全连接 domain.com 发送了无效响应。 尝试运行 Windows 网络诊断。 ERR_SSL_PROTOCOL_ERROR

我的机器上有正确的证书文件,我需要做什么才能指示 sails 使用 HTTPS 而不是 HTTP?

谢谢!

最佳答案

我认为您应该提供一个配置文件,以便告诉 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。

关于ssl - Sails JS API SSL/https 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54955918/

相关文章:

node.js - NodeJs (hmac) 的 Uber webhook 签名问题

node.js - 与 SailsJS 的多态关联

node.js - 如何将 Node 的 amqplib 与 ssl 连接?

PHP imap_open 失败,但 OpenSSL 连接

javascript - Sails.js:提交表单时 Controller 从未调用

node.js - 如何在 sails.js 模型中添加具有整数数据类型数组的属性?

node.js - 在 wercker.yml 文件的构建步骤中停止运行服务器

java - 无法发送邮件 - javax.net.ssl.SSLException : Unrecognized SSL message, 纯文本连接?

ssl - 从 Java 6 使用 TLS 1.2

java - 解决 javax.net.ssl.SSLHandshakeException : sun. security.validator.ValidatorException : PKIX path building failed Error?