在我的实时服务器中,我的expressjs应用程序在
运行http://122.22.11.22:3000
但我如何使用域名或子域名代替?对于实例:
http://my-express.com
或
http://exress.mymastersite.com
我使用快速生成器来创建我的快速骨架顺便说一句。我在Linux Arch。
有什么想法吗?
在bin / www中我默认情况下会自动生成以下代码:
#!/usr/bin/env node
/**
* Module dependencies.
*/
var app = require('../app');
var debug = require('debug')('mongoose-iot:server');
var http = require('http');
/**
* Get port from environment and store in Express.
*/
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);
....
....
....
答案 0 :(得分:1)
您想要做的是虚拟主机, 您可以使用nginx来执行此操作
只在localhost上进行快速侦听:
server.listen(3000, 'localhost');
并设置你的ngnix:
server {
listen 80;
server_name express.your-domain.com;
location / {
proxy_pass http://localhost:3000;
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;
} }
您可以根据需要添加任意数量的虚拟主机。