Nginx虚拟主机配置(三)
虚拟主机就是使用特殊的软硬件技术,把一台计算机主机分成多台“虚拟”的主机,每一台虚拟主机都具有独立的域名和IP地址(或共享的IP地址),具有完整的Internet服务器功能。在同一台硬件、同一个操作系统上,运行着为多个用户打开的不同的服务器程序,互不干扰;而各个用户拥有自己的一部分系统资源(IP地址、文件存储空间、内存、CPU时间等)。
利用虚拟主机,不用为每个要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程。虚拟主机提供了在同一台服务器、同一组Nginx进程上运行多个网站的功能。
nginx下,一个server标签就是一个虚拟主机。配置虚拟主机三种方法:
- 基于域名的虚拟主机,通过域名来区分虚拟主机——应用:外部网站
- 基于端口的虚拟主机,通过端口来区分虚拟主机——应用:公司内部网站,外部网站的管理后台
- 基于ip的虚拟主机,基本不用
一、基于域名
需要修改下hosts文件,加上IP和域名的对应关系,要不然是访问不到的。
vim /etc/hosts # 如果是在Windows访问,修改C:\Windows\System32\drivers\etc\hosts文件 192.168.178.7 www.test.com 192.168.178.7 www.cookie.com
编辑nginx下的nginx.conf文件
server { # 一个虚拟主机 listen 80; #监听的端口 server_name www.test.com; # 监听域名 localtion /{ root html-ling; #根目录定位,nginx下与conf的同级目录 index index.html; } } server { listen 80; server_name www.cookie.com; location /{ root html-wang; index index.html; } }
然后访问相应的域名www.test.com或者www.cookie.com就会出现相应的index界面。
二、基于端口
当输入不同的端口号的时候,进入不同的虚拟主机。配置如下:
server{ listen 2022; server_name 192.168.178.7; location /{ root html-wang; index index.html; } } server{ listen 2033; server_name 192.168.178.7; location /{ root html-ling; index index.html; } }
在浏览器中输入192.168.178.7:2033或者2022就会进入不同的虚拟主机。
通过以上任意一种方式你就可以在一台服务器上发布多个网站,网站之间的运行互相独立不受影响。
三、基于IP
给每一个server配置一个IP,直接访问不同的IP就会访问不同的虚拟主机。
server{ listen 80; server_name 192.168.178.7; location /{ root html-wang; index index.html; } } server{ listen 80; server_name 192.168.178.8; location /{ root html-ling; index index.html; } }
注意:配置完成后,需要reload配置才会生效。
时刻与技术进步,每天一点滴,日久一大步!!!
本博客只为记录,用于学习,如有冒犯,请私信于我。