2016-06-28 11 views
0

私は、フロントエンド(AngularJS)とバックエンドサーバー(NodeJS、Express)を別々に使用するWebアプリケーションで作業しています。WebアプリケーションでHTTPSを有効にする

すべてのURLを "https://www"にリダイレクトします。

私たちはフロントエンドで(動作する)証明書を見つけ、SSLを有効にしました。 は、それから私は 代わり

http://api.myapp.com:PORT/api

の... https://api.myapp.com/api/になりましリクエストを送信するために一定の当社のAPIコールを変更した私は、我々はnodejsスクリプトで私たちのバックエンドでHTTPSを有効にする必要があることを前提としています。

私の質問は次のとおりです: 別の証明書が必要ですか?バックエンドでhttpsを有効にするにはどうすればよいですか?サーバーはhttps要求を受け入れるだけでよいですか?それはNPMモジュールですか?今の

私nodejsがHTTPSリクエストを処理していないので、私はhttps://api.myapp.com/api/の代わりに、おそらくhttp://api.myapp.com:PORT/api

にコールを送信しようとしているとき、それは私「ネット:: ERR_CONNECTION_REFUSED」伝えます。

ハップスは私にとって新しいものです!

ありがとうございます!

答えて

1

まず、HTTPSを使用するために、あなたはHTTPSサーバがそのポートに耳を傾けなければを持っている、と述べた443ポートを、使用するが必要、あなたはURLで指定する必要がありますそれ以外の場合はnet::ERR_CONNECTION_REFUSEDが私の疑惑を確認します。

express.js> = 3では

、あなたは以下を使用する必要があります。

var fs = require('fs'); 
var https = require('https'); 
var pKey = fs.readFileSync('sslcertificate.key', 'utf8'); 
var cert = fs.readFileSync('sslcertificate.crt', 'utf8'); 
var creds = {key: pKey , cert: cert }; 
var express = require('express'); 
var app = express(); 
var httpsServer = https.createServer(creds , app); 
// Note the 443 port 
httpsServer.listen(443); 
関連する問題