Apache虚拟主机功能配置

打开文字界面

sudo su
nmtui

进入后选择Edit a connection选项,摁回车,进入可视化界面,选择edit选项,将IPv4下的Add..,添加新的IP地址以及Mac地址(XXX.XXX.X.XXX/24),其中24代表11111111.11111111.11111111.0,即为255.255.255.0。可多次按add添加,添加完成后选择ok按钮,回到上一个界面,选择back,摁回车,选择quit,回车。

这样就添加好新的IP地址了,运行命令重新加载配置文件:

systemctl restart network

查看配置文件(依照自己的实际命令查看配置文件,配置文件名称可能不同)

cat /etc/sysconfig/network-scripts/ifcfg-enp0s3

即可查看新加入的IP地址和子网掩码。

创建示例文件(依据实际情况确定)

mkdir /home/web/10
mkdir /home/web/20
echo "IP:xxx.xxx.x.10">/home/web/10/index.html
echo "IP:xxx.xxx.x.20">/home/web/20/index.html

修改Apache主配置文件

vim /etc/httpd/conf/httpd.conf

进入文件后使用以下命令搜索VirtualHost。

/VirtualHost

这个选项是用来配置虚拟主机服务的,在这段注释下面输入以下内容

<VirtualHost xxx.xxx.x.10>
DocumentRoot /home/web/10 #数据存放目录
ServerName www.a.com #域名
<Dirctory /home/web/10> #目录配置
AllowOverride None
Require all granted #设置所有访问权限为都可以访问
</Dirctory>
</VirtualHost>
<VirtualHost xxx.xxx.x.20>
DocumentRoot /home/web/20 #数据存放目录
ServerName www.a.com.cn #域名
<Dirctory /home/web/20> #目录配置
AllowOverride None
Require all granted #设置所有访问权限为都可以访问
</Dirctory>
</VirtualHost>

保存退出,使用以下命令重新加载配置文件

systemctl reload httpd

systemctl restart httpd

配置SELinux的安全上下文

semanage fcontext -a -t httpd_sys_content_t /home/web/10
semanage fcontext -a -t httpd_sys_content_t /home/web/20
semanage fcontext -a -t httpd_sys_content_t /home/web/10/*
semanage fcontext -a -t httpd_sys_content_t /home/web/20/*
restorecon -Rv /home/web

然后我们就可以访问这两个新的虚拟主机了。