linux 虚拟写,linux http虚拟主机的实现(3种方法)

linux中网站虚拟主机的实现主要有三种方式:a、基于ip地址;b、基于端口号;c、基于域名。一下为实现过程:(本实验的linux虚机系统为rhel5.6)

1、基于域名的实现:

这种方式需要搭建dns域名服务器。

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

IPADDR=192.168.22.133

NETWORK=192.168.22.0

NETMASK=255.255.255.0

BROADCAST=192.168.22.255

HWADDR=00:0C:29:89:05:2E

ONBOOT=yes

# cat /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=no

HOSTNAME=httpd.com

# cat /etc/resolv.conf

nameserver 192.168.22.133

search httpd.com

#yum install httpd -y

# vim /etc/httpd/conf/httpd.conf

NameVirtualHost 192.168.22.133:80  #将这一行注释符取消掉,*号改成ip地址

                     #复制粘贴即可得到以下几行(nyy p)

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/bbs

ServerName bbs.httpd.com

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/news

ServerName news.httpd.com

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

#mkdir -p /www/{news,bbs}

#vim /www/news/index.html

news page here

#vim /www/bbs/index.html

hello ,this is bbs

#service network restart

#service httpd start

#yum install bind bind-chroot bind-utils caching-nameserver -y

#cd /var/named/chroot/etc

#cp -a named.caching-nameserver.conf  named.conf

#vim named.conf

options {

listen-on port 53 { any; };

directory       "/var/named";

dump-file       "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

allow-query     { any; };

allow-query-cache { any; };

};

zone "httpd.com" {

type master;

file "httpd.com.zone";

};

zone "22.168.192.in-addr.arpa" {

type master;

file "22.168.192.zone";

};

#cd ../var/named

#touch httpd.com.zone

#touch 22.168.192.zone

#cat localhost.zone > httpd.com.zone

#cat named.local > 22.168.192.zone

#vim httpd.com.zone

$TTL    86400

@               IN SOA  @       root (

42              ; serial (d. adams)

3H              ; refresh

15M             ; retry

1W              ; expiry

1D )            ; minimum

IN NS           @

IN A            192.168.22.133

bbs             IN A            192.168.22.133

news            IN A            192.168.22.133

#vim 22.168.192.zone

$TTL    86400

@       IN      SOA     localhost. root.localhost.  (

1997022700 ; Serial

28800      ; Refresh

14400      ; Retry

3600000    ; Expire

86400 )    ; Minimum

IN      NS      httpd.com.

133       IN      PTR     bbs.http.com.

133       IN      PTR     news.http.com.

#service named start

# host bbs.httpd.com

bbs.httpd.com has address 192.168.22.133

# host news.httpd.com

news.httpd.com has address 192.168.22.133

# host 192.168.22.133

133.22.168.192.in-addr.arpa domain name pointer news.http.com.

133.22.168.192.in-addr.arpa domain name pointer bbs.http.com.

在linux自带的火狐浏览器测试,如下图:

7726b6c40c21079ddeecdd15e174d186.png

在另外一台虚拟的xp系统上面测试:(此时的linux和xp虚机均为桥接方式),如下图

9ba304ffb059bf95c91f6fe09e69f63e.png

ok,到此为止,linux下http域名虚拟主机的配置完美结束。

2、基于ip地址的实现

#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:1

#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:2

#cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:2

# cat ifcfg-eth0:1

DEVICE=eth0:1

BOOTPROTO=static

IPADDR=192.168.22.134

NETWORK=192.168.22.0

NETMASK=255.255.255.0

BROADCAST=192.168.22.255

HWADDR=00:0C:29:89:05:2E

ONBOOT=yes

# cat ifcfg-eth0:2

DEVICE=eth0:2

BOOTPROTO=static

IPADDR=192.168.22.135

NETWORK=192.168.22.0

NETMASK=255.255.255.0

BROADCAST=192.168.22.255

HWADDR=00:0C:29:89:05:2E

ONBOOT=yes

:注拷贝完上面的两个IP之后一定要把ifcfg-eth0:0与DEVICE=eth0:0对应上,这里只做一个举例标注

#service network restart

#vim /etc/httpd/conf/httpd.conf

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/133

ServerName 192.168.22.133

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/134

ServerName 192.168.22.134

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/135

ServerName 192.168.22.135

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

                         #要把NameVirtualHost关掉

#mkdir -p /www/{133,134,135}

# cat /www/133/index.html

hello ,this is 133 page.

# cat /www/134/index.html

hi ,this is 134 index

# cat /www/135/index.html

hey,this is 135 index page

#service httpd restart

到此,打开linux自带的火狐浏览器浏览,如下图所示:

266e4076285acac806a888d18d5858c5.png

基于ip地址的虚拟主机搭建成功。

3、基于端口的实现:

首先要手工配置一个ip地址,本实验使用的地址为192.168.22.133,改地址怎样配置见方式1详解。

#vim /etc/httpd/conf/httpd.conf

Listen 80

Listen 8080

Listen 8081        #在Listen下面添加下面两行

。。。。

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/80

ServerName 192.168.22.133

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/8080

ServerName 192.168.22.133

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/8081

ServerName 192.168.22.133

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log common

#mkdir -p /www/{80,8080,8081}

# cat /www/80/index.html

this is port 80 page

# cat /www/8080/index.html

this is port 8080 test page

# cat /www/8081/index.html

hello, this is port 8081 page

#service httpd restart

到此用linux自带的火狐浏览器测试一下,如下图所示:

87e9fbd33b5f2105bd6478ad8fc419ac.png

到此,基于端口形式的方式配置成功。

到此为止,linux网站虚拟主机的三种配置方式配置完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值