1.http服务上支持若干虚拟主机。每个虚拟主机一个对应的server配置项,配置项里面包含该虚拟主机相关的配置。参考文章,https://blog.csdn.net/liqi_q/article/details/78799121。
2.什么是虚拟主机
虚拟主机使用的是特殊的软硬件技术,它把一台运行在因特网上的服务器主机分成一台台“虚拟”的主机。
每台虚拟主机都可以是一个独立的网站,可以具有独立的域名,具有完整的Intemet服务器功能(WWW、FTP、Email等)。
同一台主机上的虚拟主机之间是完全独立的。
从网站访问者来看,每一台虚拟主机和一台独立的主机完全一样。
利用虚拟主机,不用为每个要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程。
虚拟主机提供了在同一台服务器、同一组Nginx进程上运行多个网站的功能。
3.server中包含的内容,如下:
listen 监听端口,默认80
server_name 服务器名,如localhost、www.example.com
配置纯静态的html支持的虚拟主机,例子如下:
nginx服务器ip地址:192.168.64.132
第一步:vim /etc/nginx/nginx.conf,添加如下内容:
如果默认侦听端口是80的话,不用写listen 80;也可以。
server中的root /soft/code/www;是html网页文件存放的目录,index index.html;是默认的首页文件,如果有多个index的话,按顺序从左到右依次匹配,第一个打不开,那就会打开第二个。
第二步:nginx -t -c /etc/nginx/nginx.conf 自动检查刚修改过的配置文件有没有错误,如果不加-c指定文件的话,那就默认检查主配置文件nginx.conf
第三步:创建目录,mkdir /soft/code/{www,blog},并在新建的目录中创建index.html文件。
第四步:如果是从其他机器上访问虚拟主机,需要配置域名解析才行。
vim /etc/hosts,添加内容如下图:
第五步:启动nginx,输入nginx不带任何参数就是启动nginx.默认侦听端口是80,顺便检查一下80端口开启没有,命令如下:netstat -ntulp | grep 80
第六步:测试虚拟机设置成功没有,在nginx服务器测试的话,可以这样:
curl www.test.com.zai 在其他机器测试虚拟主机时,直接在浏览器中输入域名即可:比如:www.test.com.
原文地址:http://blog.51cto.com/11009105/2169000