apache配置虚拟主机的三种方式

首先需要在yum仓库中下载apache服务命令如下  yum install httpd*

基于IP

使用nmtui命令或者在设置里面添加多个ip地址(192.168.21.200/210/220)

重启网卡  systemctl restart network

创建网站数据目录

在/home/wwwroot目录下分别创建三个网站目录  mkdir -p /home/wwwroot/{00,10,20}

在这三个网站数据目录中写入主页文件,内容为改网站的ip地址

echo "192.168.21.200" > /home/wwwroot/00/index.html  echo "192.168.21.210" > /home/wwwroot/10/index.html  echo "192.168.21.220" > /home/wwwroot/20/index.html

在/etc/httpd/conf.d 中创建一个配置文件  xxx.conf

内容为

<VirtualHost 192.168.21.200>
DocumentRoot /home/wwwroot/00
ServerName www.linuxprobe.com
<Directory /home/wwwroot/00 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.21.210>
DocumentRoot /home/wwwroot/00
ServerName bbs.linuxprobe.com
<Directory /home/wwwroot/10 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.21.220>
DocumentRoot /home/wwwroot/00
ServerName tech.linuxprobe.com
<Directory /home/wwwroot/20 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

重启一下服务  service httpd restart

分别访问一下验证结果

完成本次实验之后请还原虚拟机在进行以下实验

图片如下

 

 

 

 

 

 基于主机名

配置hosts文件  vi /etc/hosts

每行只能写一条

192.168.21.200 www.linuxprobe.com  192.168.21.200 bbs.linuxprobe.com  192.168.21.200 tech.linuxprobe.com

 创建网站数据目录

mkdir -p /home/wwwroot/{www,bbs,tech}

分别写入不同的首页文件

echo "WWW" > /home/wwwroot/www/index.html  echo "BBS" > /home/wwwroot/www/index.html   echo "TECH" > /home/wwwroot/www/index.html

在配置文件(/etc/httpd/conf/httpd.conf)中描述基于主机名称的虚拟主机(在配置文件的末尾加入)

<VirtualHost 192.168.21.200>

DocumentRoot "/home/wwwroot/www"

ServerName "www.linuxprobe.com"

<Directory "/home/wwwroot/www">

AllowOverride None

Require all granted

</directory>

</VirtualHost>

<VirtualHost 192.168.21.200>

DocumentRoot "/home/wwwroot/www"

ServerName "bbs.linuxprobe.com"

<Directory "/home/wwwroot/bbs">

AllowOverride None

Require all granted

</directory>

</VirtualHost>

<VirtualHost 192.168.21.200>

DocumentRoot "/home/wwwroot/tech"

ServerName "tech.linuxprobe.com"

<Directory "/home/wwwroot/tech">

AllowOverride None

Require all granted

</directory>

</VirtualHost>

重新启动服务  service httpd restart

完成本实验后请还原虚拟机快照到下一个实验,避免配置文件冲突

图示如下

 

 

 

 

基于端口号

创建网站数据目录  mkdir -p /home/wwwroot/{6111,6222}

写入不同的内容的主页文件 echo "port:6111" > /home/wwwroot/6111/index.html  echo "port:6222" > /home/wwwroot/6222/index.html

在配置文件中(/etc/httpd/conf/httpd.conf)描述虚拟主机

在42行的Listen 80 ,并在下面加入  Listen 6111  Listen 6222

在某尾定义虚拟主机信息

 <VirtualHost 192.168.21.200:6111>
DocumentRoot “/home/wwwroot/6111”
ServerName www.linuxprobe.com
<Directory “/home/wwwroot/6111”>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

<VirtualHost 192.168.21.200:6222>
DocumentRoot “/home/wwwroot/6222”
ServerName bbs.linuxprobe.com
<Directory “/home/wwwroot/6222”>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

重新启动服务

完成本实验后请还原虚拟机快照在进行下一个实验

图示如下

 

 

 

原文地址:https://www.cnblogs.com/zhao-yang/p/11755656.html