实现目标:通过一台服务器发布多个网站
[root@localhost ~]# cd /usr/local/apache2/ //进入到Apache的安装目录下
[root@localhost apache2]# ls
[root@localhost apache2]# cd conf/ //进入到Apache的配置文件下
[root@localhost conf]# ls
[root@localhost conf]# cd extra/ //进入Apache的扩展功能文件下
[root@localhost extra]# vim httpd-vhosts.conf //这一个文件就是用来编辑Apache虚拟主机的
进入之后把之前的配置文件清空(以下为旧文件)
清空后添加以下内容(以下为两台虚拟主机的配置,如果超两台还可往下复制粘贴,但要把发布目录修改一下,不能重复)
<VirtualHost *:80>
ServerAdmin 1319311158@qq.com
DocumentRoot /data/webapps/www1
ServerName www.ruicezhe.com
<Directory “/data/webapps/www1”>
AllowOverride All
Options -Indexes FollowSymLinks
Order allow,deny
Allow from all
ErrorLog logs/error_log
CustomLog logs/access_log common
<VirtualHost *:80>
ServerAdmin 1319311158@qq.com
DocumentRoot /data/webapps/www2
ServerName www.rcz.com
<Directory “/data/webapps/www2”>
AllowOverride All
Options -Indexes FollowSymLinks
Order allow,deny
Allow from all
ErrorLog logs/error_log
CustomLog logs/access_log common
具体注释如下
创建刚才我们配置虚拟主机时的发布目录
[root@localhost ~]# mkdir /data/webapps/{www.1,www.2} -p
//同时在/data/webapps下创建两个目录
编辑第一个网页内容
编辑第二个网页内容
网页编辑好后,检查Apache服务有没有问题,提示OK则服务正常
[root@localhost www.2]# /usr/local/apache2/bin/apachectl -t
引用刚才我们配置的虚拟主机
进入到Apache的安装目录下,修改 httpd.conf
通过搜索/vhosts找到这一行注释,把前面的#号去掉
#Include conf/extra/httpd-vhosts.conf
启动http网站
/usr/local/apache2/bin/apachectl restart
因为我们刚才在服务器上配置的域名并不能够被互联网的DNS解析到,所以我们需要在本地电脑的hosts文件添加域名解析查询记录
在本地电脑添加域名主机查询记录并保存
访问第一台虚拟主机
访问第二台虚拟主机
需要注意的地方:
1、发布目录不能相同
2、引用虚拟主机
3、配置本地hosts文件域名解析后保存
4、如果不能访问请关闭防火墙