一台服务器架设多个 nodejs 网站的拓扑结构

Nginx 的安装
1、安装 nginx 源
sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2、查看 Nginx 源是否配置成功
通过 yum search nginx 看看是否已经添加源成功。如果成功则执行下列命令安装 Nginx。 或者 npm info nginx 也可以看看 nginx 源是否添加成功
3、安装 Nginx
sudo yum install -y nginx
3、启动 Nginx 并设置开机自动运行
sudo systemctl start nginx
sudo systemctl enable nginx
Nginx 反向代理配置
1、关闭 Selinux
vi etc/selinux/config 修改 SELINUX=enforcing 为 SELINUX=disabled 必须重启 linux init 6
2、配置 firewalld 开启 80 端口
firewall-cmd --zone=public --list-ports
firewall-cmd --zone=public --add-port=80/tcp --permanent
3、配置反向代理
找到 /etc/nginx/conf.d 然后在里面新建对应网站的配置文件

server { listen 80; server_name www.bbb.com; location / { #设置主机头和客户端真实地址,以便服务器获取客户端真实 IP proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #禁用缓存 proxy_buffering off; #反向代理的地址 proxy_pass http://127.0.0.1:3001; }
}
重启 nginx
systemctl restart nginx nginx -t 看配置是否正确 systemctl stop nginx systemctl start nginx
域名测试
window
找到 C:\Windows\System32\drivers\etc\hosts
192.168.7.6 www.bbb.com //写自己的IP
Mac
打开Terminal 在terminal界面中输入: sudo vi /etc/hosts 然后回车 会提示让你输入密码 XXXX.(注意输入密码时你看不到*号) 输入成功以后,在出现的界面中按e,转入编辑模式 输入你要设定的hosts内容,比如:127.0.0.1 api.f.com 输入完毕,如果要保存退出,按[esc],再输入:wq(注意:包含前面的冒号和后面的感叹号),再按[enter],hosts就保存生效了。
浏览器输入
www.aaa.com nginx 转发到了 127.0.0.1:3001