假设某学院只有一台Apache服务器,但是有三个部门需要建立网站,一个为办公室网站,域名为office.myschool.com,另一个为计算机系网站,域名为computer.myschool.com. 还有一个为学生网站,域名为student.myschool.com.
准备:
Linux:CentOS7(自己的虚拟linux系统)
虚拟机:VMware-workstation-full-15.5.1
虚拟机设置为桥接模式
CentOS下Apache服务器 IP: 172.20.10.6 (你的虚拟机ip地址)
域名与ip对应关系如下:
office.myschool.com 172.20.10.6
computer.myschool.com 172.20.10.6
student.myschool.com 172.20.10.6
1.配置基于域名的虚拟主机:
步骤1:在WEB服务器上检查并安装必要软件;
yum install httpd
步骤2:注册虚拟主机所要使用的域名。
为了方便,暂时直接使用/etc/hosts文件来进行域名的解析。(大家也可以自己进行dns服务器配置进行域名解析)
编辑/etc/hosts文件,在文件中添加以下内容:
进行ping操作,判断解析是否成功;
ping office.myschool.com #检测域名解析是否正常
ping computer.myschool.com
ping student.myschool.com
若能ping通,则域名解析正常。
步骤3:创建所需的目录;
mkdir /var/www/office
mkdir /var/www/computer
mkdir /var/www/student
步骤4:编辑/etc/httpd/conf/httpd.conf配置文件
设置Listen指令侦听的端口
Listen 80
在httpd.conf配置文件的第三部分(末尾)中,添加对虚拟主机的定义。添加的配置内容为:
NameVirtualHost 172.20.10.6
.20.10.6>
ServerName office.myschool.com
DocumentRoot /var/www/office
</VirtualHost>
.20.10.6>
ServerName computer.myschool.com
DocumentRoot /var/www/computer
</VirtualHost>
.20.10.6>
ServerName student.myschool.com
DocumentRoot /var/www/student
</VirtualHost>
保存退出。
启动服务 ;systemctl start httpd
步骤5:测试虚拟主机
利用vi编辑器,在虚拟主机的站点根目录,分别创建index.html页面文件,并在页面的与之间输人不同的正文内容,以示区别。
/var/www/office/index.html 的内容是:
<html>
<body>
<p> this is office test page!</p>
</body>
</html>
其他两个目录同样操作,显示文本不一样以示区别。
步骤6:启动浏览器,然后在地址栏中分别键入http://office.myschool.com和computer.myschool.com,student.myschool.com并回车,查看虚拟主机对应的Web站点工作是否正常。
域名与ip对应关系如下:
office.myschool.com 172.20.10.10
computer.myschool.com 172.20.10.11
student.myschool.com 172.20.10.12
步骤1: 为网卡添加虚拟接口
ethx(每个人的x不一样,所以用x替代,我的是33)的网卡的配置文件为/etc/sysconfig/network-scripts/ifcfg-ethx,ethx的第一张虚拟网卡的设备名为ethx:0,对应的配置文件为ifcfg-ethx:0,通过修改配置文件中的设备名和IP地址,即可实现IP地址的绑定,具体操作步骤如下:
cp ifcfg-ethx ifcfg-ethx:0
vim ifcfg-eth0:0
在复制后的ifcfg-ethx:0中编辑两处:
DEVICE=ethx:0
IPADDR=172.20.10.10
同样的操作cp ifcfg-ethx ifcfg-ethx:1和ifcfg-ethx:2;
vim ifcfg-eth0:1和vim ifcfg-eth0:2,编辑更改两处对应的device和ipaddr。
步骤2:激活网卡
使用命令:ifup ethx:0
ping测试:ping 172.20.10.10
若能ping通,则说明IP地址绑定成功。
步骤3:编辑/etc/hosts文件,在文件中添加以下内容:
172.20.10.10 office.myschool.com
172.20.10.11 computer.myschool.com
172.20.10.12 student.myschool.com
进行ping测试看是否能域名解析:
# ping office.myschool.com #检测域名解析是否正常
# ping computer.myschool.com
# ping student.myschool.com
步骤4:编辑/etc/httpd/conf/httpd.conf配置文件:
设置Listen指令侦听的端口
Listcn 80
在httpd.conf配置文件的第三部分中,添加对虚拟主机的定义。添加的配置内容为:
.20.10.10>
ServerName office.myschool.com
DocumentRoot /var/www/office
</VirtualHost>
.20.10.11>
ServerName computer.myschool.com
DocumentRoot /var/www/computer
</VirtualHost>
.20.10.12>
ServerName student.myschool.com
DocumentRoot /var/www/student
</VirtualHost>
保存退出。
启动服务: systemctl start httpd
步骤5:测试虚拟主机
利用vi编辑器,在虚拟主机的站点根目录,分别创建/var/www/xxx/index.html页面文件,并在页面的与之间输人不同的正文内容,以示区别。同之前。
步骤6:浏览器测试
启动浏览器,然后在地址栏中分别键入http://office.myschool.com和computer.myschool.com,student.myschool.com并回车,查看虚拟主机对应的Web站点工作是否正常。
好了,今天的apache服务器的配置就到这里了,有任何疑问或建议,在评论留言,大家一起讨论学习,更多linux学习请关注我!!!