如何在nodejs中使用https连接?

问题描述:

我正在使用Nginx + PHP设置来运行带有80端口的PHP页面。还使用带有8080端口的nodejs。现在我想连接Nodejs的SSL(https)连接。如何在nodejs中使用https连接?

如何才能实现? PLS。

+0

本地对吧? –

+0

是的本地..... – selvan

+0

你会使用express的nodejs或只是node.js –

你有两种方法可以实现你想要做什么:

1.通过Nginx的

这样,您就可以使用您的SSL证书对你的PHP网站设置你的SSL以及。为了达到这个目的,你必须在虚拟主机文件/etc/nginx/sites-enabled/foo中设置一些规则。 在下面的例子中,我创建了一个子域api.lvh.me(lvh.me重定向到本地主机)

server { 
    listen 443 ssl; 
    server_name api.lvh.me; 

    ssl_certificate /path/to/certificate.crt; 
    ssl_certificate_key /path/to/certificate.key; 

    location/{ 
     proxy_pass http://127.0.0.1:8080/; 
     proxy_http_version 1.1; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection 'upgrade'; 
     proxy_set_header Host $host; 
     proxy_cache_bypass $http_upgrade; 
    } 
} 

2.您的NodeJS服务器上设置HTTPS直接

我不会进入细节,一切都写在Nodejs的文档上(HTTPS Nodejs Documentation

+0

我得到错误 – selvan

+0

“proxy_pass”不能在由正则表达式给出的位置或命名位置内或“if”语句内,或在/etc/nginx/nginx.conf中的“limit_except”块内部具有URI部分:64 nginx:配置文件/etc/nginx/nginx.conf测试失败 – selvan

+0

我想在PHP页面中使用nodejs。 – selvan