2017-03-09 56 views
0

我正在使用Nginx + PHP設置來運行帶有80端口的PHP頁面。還使用帶有8080端口的nodejs。現在我想連接Nodejs的SSL(https)連接。如何在nodejs中使用https連接?

如何才能實現? PLS。

+0

本地對吧? –

+0

是的本地..... – selvan

+0

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

回答

1

你有兩種方法可以實現你想要做什麼:

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