2015-12-05 1 views
0

J'ai quatre pages dans un dossier "public". Je veux ouvrir ces pages avec HTTPS parce que getusermedia() ne fonctionne plus dans les connexions HTTP. Ceci est mon code:Page Web HTTPS - NodeJS

var express = require("express"); 
var https = require('https'); 
var BinaryServer = require('binaryjs').BinaryServer; 
var fs = require('fs'); 
var options = { 
    key: fs.readFileSync('key.pem'), 
    cert: fs.readFileSync('cert.pem') 
}; 
var app = express(); 
var server = https.createServer(options, app);//.listen(9000); 
app.use(express.static('public')); 
app.listen(9000); 

Mais les pages ne s'ouvre pas en HTTPS (il suffit d'ouvrir en HTTP). Avant de vérifier le certificat, je veux être sûr que tout va bien avec le code.

+0

Quelle est l'erreur que vous avez tout ouvrir dans le navigateur? – Sathish

+0

@Sathish none ... – carduh

+0

Puis-je savoir ce que vous voulez dire par aucun? La console lance-t-elle une erreur? Navigateur jeter un certificat manquant erreur? dans Mozilla/Chrome ils montreront l'avertissement. – Sathish

Répondre

2

Vous ne devriez pas utiliser app.listen, car ce n'est encore que l'application "régulière" express (aka http), je crois.

Cela devrait vous orienter dans la bonne direction (prise à partir de l'API docs @http://expressjs.com/en/api.html)

Edit:

Ajouté dans la façon dont votre code devrait ressembler:

var express = require("express"); 
var https = require('https'); 
var BinaryServer = require('binaryjs').BinaryServer; 
var fs = require('fs'); 
var options = { 
    key: fs.readFileSync('key.pem'), 
    cert: fs.readFileSync('cert.pem') 
}; 
var app = express(); 
app.use(express.static('public')); 

https.createServer(options, app).listen(9000); 
+0

C'est la réponse ... Et l'autre erreur que j'ai faite est l'appel du lien .. J'oublie écrire la partie https (il semble nécessaire). Le résultat est: 'https: // _ ip: _port/_my_web_page.html' – carduh

+1

Correct. La chose la plus facile à faire est d'avoir HTTP rediriger vers https (http://stackoverflow.com/questions/22332442/redirect-http-to-https-express-js a une solution pour rediriger http vers https) – yusijs