我在Heroku上有一个MEAN应用程序。我想确保所有流量都通过HTTPS传输。
我尝试了两个npm模块
https://www.npmjs.com/package/express-sslify和 https://www.npmjs.com/package/heroku-ssl-redirect
在我的app.js文件中,我做了以下
var sslRedirect = require('heroku-ssl-redirect');
var express = require('express');
var app = express();
// enable ssl redirect
app.use(sslRedirect());
然后在www文件中使用
#!/usr/bin/env node
/**
* Module dependencies.
*/
var app = require('../app');
var debug = require('debug')('node-rest:server');
var http = require('http');
var sslRedirect = require('heroku-ssl-redirect');
var enforce = require('express-sslify');
var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);
/**
* Create HTTP server.
*/
var server = http.createServer(app);
/**
* Listen on provided port, on all network interfaces.
*/
server.listen(port);
server.on('error', onError);
server.on('listening', onListening);
我似乎无法让应用重定向,因此如果人们使用https的网址,就会向他们发送警告
答案 0 :(得分:0)
您需要在express.static
之前强制执行SSLapp.use(express.static(path.join(__dirname, 'public')));
然后它很棒