node.js配置HTTPS服务器

发布时间:2017-09-12

node.js配置https?

node.js 自带了https 模块。 但是使用node.js实现https不太友好,就好像为什么node.js不适合处理静态资源一个道理,用nginx去配置https反而会更好。

首先下载申请的ca证书。

// 在nginx.conf 配置文件的同级目录新建一个cert目录
// 将下载好的文件全部拷贝到cert目录下

配置Nginx SSL

打开nginx.conf 将下面拷贝到里面去

server {
    listen 443;
    server_name localhost;
    ssl on;
    root html;
    index index.html index.htm;
    ssl_certificate   cert/214257984300691.pem;         // 这里需要更改成你的证书
    ssl_certificate_key  cert/214257984300691.key;    // 这里需要更改成你的证书
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        root html;
        index index.html index.htm;
    }
}

重新启动Nginx

service nginx restart

试试使用https 能否打开网站?

关于Nginx转发代理Node.js,请参考这里

点击这里

这样就完了吗?要为80端口跳转到443。

继续在刚才配置文件里另行添加

server {
    listen       80;
    server_name  www.1ymlh.com;
# 可能很多人看到下面的写法, 下面的是老版本    
#    rewrite /.* https://www.1ymlh.com$uri permanent;
# 新版本这样写, 推荐
return 301 https://www.1ymlh.com$request_uri;
}
Node.jsLinuxWEB安全
广告