nodejs绑定域名

文章发布于 2023-08-11

在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应用了