前言:一些公司拥有多个网站,可是每个网站不可能在一台服务器上跑,因为成本太高了,然而虚拟主机可以解决该问题,虚拟主机使得一台服务器可以运行多个网站。而配置虚拟主机的方法有三种,分别是:基于
IP
地址不同端口的虚拟主机、基于不同
IP
地址的虚拟主机、基于域名的虚拟主机这三种,下面就对他们各自进行详述吧!
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1.
检查是否安装了
Apache
的相关组件,同时关闭掉防火墙先(免得忘记,
^_^
)
,
截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/6b7729b4483be93d7a1b0759377cfdcd.jpeg)
2.
配置基于
IP
地址不同端口的虚拟主机:配置一台虚拟主机,其
Ip
地址为
192.168.10.100
,分别使用
8000
和
8080
端口,其
Web
站点的根目录分别为
/var/www/html/IP_8000
和
/var/www/html/IP_8080
。同时在
IP_8000
目录和
IP_8080
目录下分别建立
Index.html
文件,并分别在
Index.html
文件中添加一些内容。截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/233ae0a9fafb156f64738de1b5f11027.jpeg)
3.
查看一下网卡的
IP
地址,如果网卡的
Ip
地址不是我们所需要的那个
IP
地址的话,我们可以创建临时起作用的
IP
地址,输入命令“
ifconfig eth0 192.168.10.100 netmask 255.255.<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />255.0”.
查看一下网卡
IP
地址截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/a4f387d86389288d13215df00f8554e6.jpeg)
4.
编辑
/etc/httpd/conf/httpd.conf
文件,设置其内容,在配置文件的最后面就是虚拟主机的设置,这里只截关键的图,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/4bd1c9ebd5edde27e3f50a77a041a72d.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/4d6d2fbd806651c21875477a5d9e7831.jpeg)
架设同一
IP
地址不同端口的多个虚拟主机时,
Listen
参数值为端口号,而在
<VirtualHost IP
地址:端口号
>
语句块中,指定了
DocumentRoot
参数值就制定虚拟主机的站点目录。
5.
输入命令“
service httpd restart
”
,
重启
httpd
服务,同时在
windows
计算机中启动
IE
,地址栏中输入:
http://192.168.10.100:8000,
和
http://192.168.10.100:8080,
显示如下图所示:
![](https://i-blog.csdnimg.cn/blog_migrate/abd5ed47fab41ffece3769b87cfed502.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/40922840cf9ad8035d298b67a848c1bc.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/4b313b04a74197a25ff1e5f8e17a6704.jpeg)
6.
基于相同
IP
地址不同端口的虚拟主机测试成功。
7.
基于不同
IP
地址的虚拟主机:配置一台虚拟主机,其
Ip
地址分别是
192.168.10.100
和
192.168.10.196
,其
web
站点的根目录为
/var/www/html/IP_100
和
/var/www/html/IP_196.
并且在
IP_100
和
IP_196
两个目录下分别创建
Index.html
文件,并写入一些内容到
Index.html
文件中。截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/500feddeacd54633113a0d49ded8ff78.jpeg)
8.
由于我的虚拟机上用了两块网卡,
eth0
的
IP
地址是
192.168.10.196
,另一块网卡
eth1
的
IP
地址是
192.168.10.100
,所以我就决定用着两块网卡来做实验,如果你只有一块网卡的话,那么你也不用着急怕做不了这个实验,因为
Linux
中的网卡支持虚拟子接口,所以使用“
ifconfig eth0:0 192.168.10.100”和“ifconfig eth0:1 192.168.10.196”就可以实现了,但是要让这些子接口有效的话,一定要保证eth0
这个网卡是启动有效的。由于我有两块网卡,所以我就用两块网卡做实验,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/5d620340a1b6df4c00d0c18a5239e807.jpeg)
9.
编辑
/etc/httpd/conf/httpd.conf
文件,设置其内容,在配置文件的最后面就是虚拟主机的设置,添加下面截图的内容,这里只截关键的图,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/5c136bfcadf80e172198f48982519be7.jpeg)
10.
输入命令“
service httpd restart
”
,
重启
httpd
服务,同时在
windows
计算机中启动
IE
,地址栏中输入
http://192.168.10.100,
和
http://192.168.10.196
显示虚拟主机的主页如下:截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/37b24bfad244cc125b73340362e6e658.jpeg)
11.
基于不同
IP
地址的虚拟主机测试成功
12.
基于域名的虚拟主机:配置一虚拟主机,其
IP
地址为
192.168.10.100
,设置两个虚拟主机,其域名分别是
product.redhat.com
和
service.redhat.com.(
注:由于我的
DNS
服务器已经搭建好了,用的域名是
redhat.com
,在这里我就不再做详细介绍,可以去看《
DNS
服务器的架设》这份文档,这里就把主区域和反向区域进行截图
)
。
我们在
/var/www/http/
目录下分别建立
Vhost_service
和
Vhost_product
目录,并分别在两个目录中创建
Index.html
文件,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/7cac8e91def8683f898491a8095724e1.jpeg)
13.
创建
DNS
服务器的配置文件,输入命令“
vim /var/named/chroot/etc/named.conf
”,文件内容如下:
![](https://i-blog.csdnimg.cn/blog_migrate/0aee37f52f1bddc698ff7976936f0afb.jpeg)
14.
编辑
redhat.com
这个域的正向区域文件,输入命令“
vi /var/named/chroot/var/named/yangzexin.redhat.com
”
,
编辑的内容如下,
product.redhat.com
和
service.redhat.com
与
IP
地址
192.168.10.100
的对应关系。
![](https://i-blog.csdnimg.cn/blog_migrate/2f2a954a6625f16cca0def7593c93571.jpeg)
15.
编辑
redhat.com
这个域的反向区域文件,输入命令“
vi /var/named/chroot/var/named/192.168.10.in-addr.arpa
”
,
编辑的内容如下,
IP
地址
192.168.10.100
和域名
product.redhat.com
和
service.redhat.com
的对应关系。
![](https://i-blog.csdnimg.cn/blog_migrate/11f27f2c3765eca826b46328c6bf61d6.jpeg)
16.
启动
named
守护进程,输入命令“
service named Start
”
17.
编辑
/etc/httpd/conf/httpd.conf
文件,添加内容如下,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/572e3f9ffc4cf1d25b36f2d37be44082.jpeg)
架设不同域名的多个虚拟主机是,
<VirtualHost IP
地址:端口号
>
语句块的
Servicename
参数值就是虚拟主机的域名,
DocumentRoot
参数值就是指定虚拟主机的站点目录。
18.
重启
httpd
守护进程,输入命令“
service httpd restart”
重启。
19.
在
windows
计算机下打开
IE
浏览器,在地址栏输入:
http://service.redhat.com
和
http://product.redhat.com
将分别显示
/var/www/html/Vhost_service
和
/var/www/html/Vhost_product
目录下
Index.html
文件的内容,如图所示:
转载于:https://blog.51cto.com/yangzexin07/227848