Nginx和Apache中的虚拟主机的概念

编程

 在部署环境的时候,有时候会引用到虚拟主机的概念,什么是虚拟主机呢,博主之前一直把虚拟主机的概念没搞清楚,导致在部署的时候,一直动不动就404 ,或者500,或者服务器不通

所以,什么是虚拟主机呢? 虚拟主机概念大致同虚拟机的概念。

如果你有两个不同域名的网站,但是你只有一台服务器,这时候怎么办?其实利用nginx或者apache都可以帮你用一台机器来模拟多台机器作为服务器提供服务。

虚拟主机,就是把一台物理服务器划分成多个“虚拟”的服务器,每一个虚拟主机都可以有独立的域名和独立的目录

nginx的虚拟主机就是通过nginx.conf中server节点指定的,想要设置多个虚拟主机,配置多个server节点即可

先看一个最简单的虚拟主机配置示例

server { 

listen 80;

server_name a.test.com;

location / {

index index.html;

root /home/www/host_a/;

}

}

listen 80;

指定这个虚拟主机监听的是80端口

server_name a.test.com;
指定这个虚拟主机名为a.test.com,当用户访问a.test.com时,就有这个虚机主机进行处理。

 

 

多台虚拟主机
(1)对两个域名配置相应的虚拟主机,指定不同的目录

a.test.com -> /home/www/a

b.test.com -> /home/www/b

配置

server {

listen 80;

server_name a.test.com;

#开启网站目录文件列表功能,访问目录时列出其中的文件列表,默认不开启

autoindex on;

index index.html;

root /home/www/a/;

}

server {

listen 80;

server_name b.test.com;

index index.html;

root /home/www/b/;

#禁止对self目录的访问

location /(self)/ {

deny all;

}

}

以上是 Nginx和Apache中的虚拟主机的概念 的全部内容, 来源链接: utcz.com/z/512828.html

回到顶部