标签:构建虚拟web主机 基于域名的虚拟主机 基于端口的虚拟主机
虚拟Web主机指的是在同一台服务器中运行多个Web站点,其中的每一个站点实际上并不
独自占用整个服务器,因此被称为“虚拟Web主机”。 通过虚拟Web主机服务可以充分利用
服务器的硬件资源,从而大大降低网站构建及运行成本
使用httpd可以非常方便地构建虚拟主机服务器,只需要运行一个httpd服务就能够同时支撑
大量的Web站点。Httpd支持的虚拟主机类型包括以下三种:
基于域名的虚拟主机 : 不同的域名 相同的IP
基于端口的虚拟主机 : 不使用域名、IP来区分不同站点的内容,而是用不同的TCP端口号
.基于IP地址的虚拟主机 : 不同的域名 不同的IP ( 需要加网络接口 ,应用的不广泛)
由于基于IP地址的虚拟主机需要添加网络接口 使用不广泛,所以下面只对基于域名的虚拟主机
和基于端口的虚拟主机 进行介绍。
.
1:基于域名的虚拟主机
# vim /etc/httpd/conf/httpd.conf //配置httpd.conf
ServerName linux.zkc.com:80
Listen 192.168.100.101:80 //监听的IP端口
#Listen 80 //注释这行
创建独立的配置文件夹
# vim /etc/httpd/conf.d/vhost.conf //创建vhost.conf
NameVirtualHost 192.168.100.101:80
<VirtualHost 192.168.100.101:80>
ServerAdmin webmaster@dummy-host.example.com //建立一个管理员邮箱
DocumentRoot /opt/benet/ //站点目录
ServerName www.benet.com //域名www.benet.com
ErrorLog logs/benet.com-error_log //错误日志
CustomLog logs/benet.com-access_log common //访问日志
</VirtualHost>
<VirtualHost 192.168.100.101:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /opt/accp/
ServerName www.accp.com
ErrorLog logs/accp.com-error_log
CustomLog logs/accp.com-access_log common
</VirtualHost>
.
为虚拟机准备网页文档
mkdir /opt/benet
mkdir /opt/accp
echo "this is benet" > /opt/benet/index.html
echo "this is accp" > /opt/accp/index.html
.
域名解析需要安装配置DNS
rpm -ivh /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm
vim /etc/named.conf //DNS修改主配置文件
listen-on port 53 { 192.168.100.101; };
allow-query { any; };
# vim /etc/named.rfc1912.zones //修改DNS区域文件
zone "benet.com" IN {
type master;
file "benet.com.zone";
allow-update { none; };
};
zone "accp.com" IN {
type master;
file "accp.com.zone";
allow-update { none; };
};
修改DNS区域数据文件
# cd /var/named/
# cp -p named.localhost benet.com.zone
# vim benet.com.zone
@ IN SOA @ admin. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
www IN A 192.168.100.101
# cp -p benet.com.zone accp.com.zone
# service named restart
# service httpd restart
打开IE浏览器 输入 www.benet.com www.accp.com
2:基于端口的虚拟主机 (这里测试的是8080端口)
# vim /etc/httpd/conf.d/vhost.conf
.....
..... //添加下面几行
NameVirtualHost 192.168.100.101:8080
<VirtualHost 192.168.100.101:8080>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /opt/benet01/
ServerName www.benet.com
ErrorLog logs/benet.com-error_log
CustomLog logs/benet.com-access_log common
</VirtualHost>
为www.benet.com:8080 准备一个测试网页
# mkdir /opt/benet01
# echo "this is benet8080" > /opt/benet01/index.html
# vi /etc/httpd/conf/httpd.conf
Listen 192.168.100.101:8080
在IE浏览器里 输入www.benet.com:8080
标签:构建虚拟web主机 基于域名的虚拟主机 基于端口的虚拟主机
原文地址:http://blog.51cto.com/13630803/2125213