部署Nginx-一个ip,多个域名,部署多个项目
一、背景
无论是在centos、ubuntu、iis等云服务器,还是在个人的电脑上,当部署Nginx时,基本上都会遇到想用一台服务器(只有一个IP)映射到多个域名上,以供访问多个不同的前端项目的情况(这里以部署多个前端项目为例)。
二、知识点
1.一台云服务器对应于一个ip;
2.ip可以配合很多端口号进行监听活动;
3.网页访问通用端口号是80;
4.通过域名访问某个网页(比如百度:www.baidu.com)时,是需要将域名通过网路中dns解析服务器解析成对应服务器的ip的;
5.在类unix机上,通常使用hosts文件来配置本地的ip和通用域名,一个hosts文件类似如下:
6.云服务器上备案了的域名解析,当然在云服务器控制台的域名解析配置项下。
三、实现的目标
1.电脑上有2个网页,代表2个网站
2.不想要通过监听不同端口号来访问这2个网站,而是我分别给这2个网站起个域名,对应域名访问对应的网站
3.例如:
www.abc.com,就可以访问网站1
www.123.com,就可以访问网站2
四、具体操作(在Mac电脑中演示)
1.准备2个前端项目,或者只是2个html文件就好,类似如下,需要放在nginx配置目录文件下的位置,此处以html文件夹作为nginx显示前端项目的目录。
- 修改nginx的配置文件nginx.conf,给80端口加上2个server的配置,如下:
修改后记得重启一下nginx:nginx -s reload,让配置生效
3. 修改mac电脑上的hosts文件,位置一般在:
修改之前先备份(切记要备份,基本操作哈),由于权限限制,不能直接修改hosts文件,所以先将原始hosts文件先拷贝出2份,一份用作备份,一份用来进行修改,修改后的文件再去etc下替换原文件。
修改文件为:
- 浏览器中输入:www.abc.com和www.123.com,测试一下:
- 测试结果是成功的。