虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等,提供必要的站点功能、数据存放和传输功能。所谓虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWW、FTP、E-mail等)功能,从用户角度来看,每台虚拟主机和一台独立的服务器完全相同,在IP地址日益紧张的今天,基于域名的虚拟主机要比基于IP的虚拟主机使用的更加广泛。
Apache虚拟主机配置:
#####################################################
1、基于IP的虚拟主机
[root@localhost ~]# yum install httpd* -y
[root@localhost conf.d]# pwd
/etc/httpd/conf.d/
[root@localhost conf.d]# vi vhost.conf //新建一个虚拟主机的配置文件
[root@localhost conf.d]# cat vhost.conf //虚拟主机配置文件内容如下:
<VirtualHost 192.168.0.100>
ServerName 192.168.0.100:80
ServerAdmin web@kumu1.sxkeji.com.cn
DocumentRoot "/var/www/kumu1"
ErrorLog logs/kumu1/error_log
CustomLog logs/kumu1/access_log common
</VirtualHost>
<VirtualHost 192.168.0.101>
ServerName 192.168.0.101:80
ServerAdmin web@kumu2.sxkeji.com.cn
DocumentRoot "/var/www/kumu2"
ErrorLog logs/kumu2/error_log
CustomLog logs/kumu2/access_log common
</VirtualHost>
#CustomLog 访问日志文件名 访问日志的格式
#访问日志格式:
#common(标准格式,为绝大多数日志分析工具所识别)
#combined (common的扩展)
[root@localhost conf.d]# mkdir /var/www/kumu1 /var/www/kumu2
[root@localhost conf.d]# echo "This is kumu1" > /var/www/kumu1/index.html
[root@localhost conf.d]# echo "This is kumu2" > /var/www/kumu2/index.html
[root@localhost logs]# pwd
/etc/httpd/logs
[root@localhost logs]# mkdir kumu1 kumu2 //不放在单独的目录中,则启动服务自动生成相应日志
//如果单独存放,则需要新建存放目录的位置
[root@localhost conf.d]# service httpd restart
停止 httpd: [失败]
启动 httpd: [确定]
[root@localhost conf.d]#
[root@localhost logs]# elinks -dump 192.168.0.100 //测试成功
This is kumu1
[root@localhost logs]# elinks -dump 192.168.0.101 //测试成功
This is kumu2
[root@localhost logs]#
2、基于主机名的虚拟主机
在IP地址日益紧张的今天,基于域名的虚拟主机要比基于IP的虚拟主机使用的更加广泛。但是,随着IPV6的普及,相信IP的问题未来将不再是问题。
[root@localhost ~]# yum install bind* -y
[root@localhost ~]# yum install caching-name* -y
[root@localhost ~]# cd /var/named/chroot/etc/
[root@localhost etc]# ll named.conf
-rw-r----- 1 root named 339 02-28 18:46 named.conf
[root@localhost etc]# cat named.conf
options {
listen-on port 53 { any; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
allow-query { any; };
allow-query-cache { any; };
};
zone "kumu3.com" IN {
type master;
file "kumu3.zone";
allow-update { none; };
};
zone "kumu4.com" IN {
type master;
file "kumu4.zone";
allow-update { none; };
};
[root@localhost etc]# cd ../var/named/
[root@localhost named]# ll kumu*
-rw-r----- 1 root named 240 02-28 18:49 kumu3.zone
-rw-r----- 1 root named 239 02-28 18:50 kumu4.zone
[root@localhost named]# cat kumu3.zone
$TTL 86400
@ IN SOA dns.kumu3.com. root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.kumu3.com.
dns IN A 192.168.0.2
www IN A 192.168.0.2
[root@localhost named]# cat kumu4.zone
$TTL 86400
@ IN SOA dns.kumu4.com. root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.kumu4.com.
dns IN A 192.168.0.2
www IN A 192.168.0.2
[root@localhost named]# service named restart
停止 named: [确定]
启动 named: [确定]
[root@localhost named]# vi /etc/resolv.conf
[root@localhost named]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
nameserver 127.0.0.1
search localdomain
[root@localhost named]# host www.kumu4.com
www.kumu4.com has address 192.168.0.2
[root@localhost named]# host www.kumu3.com
www.kumu3.com has address 192.168.0.2
[root@localhost named]#
[root@localhost conf.d]# pwd
/etc/httpd/conf.d
[root@localhost conf.d]# vi vhost1.conf
[root@localhost conf.d]# cat vhost1.conf
NameVirtualHost 192.168.0.2:80
<VirtualHost 192.168.0.2:80>
ServerName www.kumu3.com
ServerAdmin web@kumu3.com
DocumentRoot "/var/www/kumu3"
ServerName kumu3.sxkeji.com.cn
ErrorLog logs/kumu3/error_log
CustomLog logs/kumu3/access_log combined
</VirtualHost>
<VirtualHost 192.168.0.2:80>
ServerName www.kumu4.com
ServerAdmin web@kumu4.com
DocumentRoot "/var/www/kumu4"
ErrorLog logs/kumu4/error_log
CustomLog logs/kumu4/access_log combined
</VirtualHost>
[root@localhost conf.d]# mkdir ../logs/kumu3
[root@localhost conf.d]# mkdir ../logs/kumu4
[root@localhost conf.d]# mkdir /var/www/kumu3
[root@localhost conf.d]# mkdir /var/www/kumu4
[root@localhost conf.d]# echo "This is kumu3" >> /var/www/kumu3/index.html
[root@localhost conf.d]# echo "This is kumu4" >> /var/www/kumu4/index.html
[root@localhost conf.d]# service httpd restart
停止 httpd: [确定]
启动 httpd: [确定]
[root@localhost conf.d]#
[root@localhost conf.d]# elinks -dump www.kumu3.com
This is kumu3
[root@localhost conf.d]# elinks -dump www.kumu4.com
This is kumu4
[root@localhost conf.d]#
测试成功!
#####################################################
下一篇文章主要介绍的是Nginx的虚拟主机配置......