在nodejs中,创建一个http服务器特别简单。例如新建一个app.js,并在文件中写入以下代码,一个nodejs http服务器就创建成功了。
// app.js
const http = require('http');
const server = http.createServer((req, res) => {
res.end('hello world');
});
server.listen(3000,()=>{
console.log('server is running')
});
然后使用node app.js命令运行这个服务器,如果控制台出现server is running
那么3000端口的http服务器就可以在外网访问了,不过只可以通过ip的形式来访问。在实际项目中绝大多数情况下需要使用域名访问,如何将域名绑定到刚运行的web应用上呢? 接下来使用nginx来给nodejs绑定域名。
nginx 配置
使用nginx给nodejs绑定域名特别简单,配置如下:
server {
listen 80; //端口,默认80端口
server_name xxx.cm; //绑定域名 ,支持多域名
location / {
proxy_pass http://127.0.0.1:3000; // 反向代理nodejs的3000端口服务器
}
}
配置成功之后重启nginx之后就可以通过xxx.com 域名访问nodejs 3000 端口的web应用了