没有反向代理的 koa-sslify 模块的 Koa HTTPS 连接
Koa HTTPS connection with koa-sslify module Without Reverse Proxy
我尝试使用该模块为 Koa 服务器建立 HTTPS 连接 https://www.npmjs.com/package/koa-sslify,但出现错误 "AssertionError: app.use() requires a generator function"
'use strict';
var app = require('application'),
enforceHttps = require('koa-sslify'),
config = require('config'),
fs = require('fs'),
path = require('path'),
routes = fs.readdirSync(path.join(__dirname, '../routing')).sort();
routes.forEach(function (route) {
require('../routing/' + route);
});
// Force HTTPS on all page
app.use(enforceHttps({
trustProtoHeader: true
}));
app.listen(config.server.port,config.server.host);
更新:
我改用 NGINX,因为它可能工作得更好并且使用更少的资源
尝试这种方式,但最好使用NGINX作为反向代理服务器
const Koa = require('koa');
const https = require('https');
const fs = require('fs');
const { default: enforceHttps } = require('koa-sslify');
const app = new Koa();
// Force HTTPS using default resolver
app.use(enforceHttps({
port: 443
}));
// index page
app.use(ctx => {
ctx.body = `hello world from ${ctx.request.url}`;
});
// SSL options
const options = {
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.crt')
}
// start the server
https.createServer(options, app.callback()).listen(443);
我尝试使用该模块为 Koa 服务器建立 HTTPS 连接 https://www.npmjs.com/package/koa-sslify,但出现错误 "AssertionError: app.use() requires a generator function"
'use strict';
var app = require('application'),
enforceHttps = require('koa-sslify'),
config = require('config'),
fs = require('fs'),
path = require('path'),
routes = fs.readdirSync(path.join(__dirname, '../routing')).sort();
routes.forEach(function (route) {
require('../routing/' + route);
});
// Force HTTPS on all page
app.use(enforceHttps({
trustProtoHeader: true
}));
app.listen(config.server.port,config.server.host);
更新:
我改用 NGINX,因为它可能工作得更好并且使用更少的资源
尝试这种方式,但最好使用NGINX作为反向代理服务器
const Koa = require('koa');
const https = require('https');
const fs = require('fs');
const { default: enforceHttps } = require('koa-sslify');
const app = new Koa();
// Force HTTPS using default resolver
app.use(enforceHttps({
port: 443
}));
// index page
app.use(ctx => {
ctx.body = `hello world from ${ctx.request.url}`;
});
// SSL options
const options = {
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.crt')
}
// start the server
https.createServer(options, app.callback()).listen(443);