服务器维护,服务器代维,安全设置,漏洞扫描,入侵检测服务

运维之家

 找回密码
 注册
搜索
查看: 4182|回复: 0

apache基于IP,port和域名三种虚拟主机配置方法

[复制链接]
dirtysea 发表于 2010-3-5 11:54:07 | 显示全部楼层 |阅读模式
注:
  您可以在您的hosts文件中添加这一条目来进行测试,但这种方法仅适用于那些有这些hosts文件的机器来使用。

NameVirtualHost *:80
<VirtualHost *:80>
ServerName web1.dirtysea.com
ServerAlias web11.dirtysea.com
ServerAdmin web1@163.com
DocumentRoot /var/www/web1
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerName web2.dirtysea.com
ServerAlias web22.dirtysea.com
ServerAdmin web2@163.com
DocumentRoot /var/www/web2
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>


一.基于相同IP不同Port的虚拟主机
  
  1)vi /etc/http/conf/httpd.conf
  
  2)将Listen字段改为
  Listen 80
  Listen 8888
  (以上设置表示使用80以及8888端口)
  
  3)更改虚拟主机部分为:
  <VirtualHost 192.168.0.1:80>
  DocumentRoot /var/www/html/website1
  </VirtualHost>
  <VirtualHost 192.168.0.1:8888>;
  DocumentRoot /var/www/html/website2
  </VirtualHost>
  
  4)保存以上设置
  
  5)创建目录以及页面文件:
  #mkdir –p /var/www/html/website1
  #mkdir –p /var/www/html/website2
  #cd /var/www/html/website1
  #cat >index.html <<EOF
  >website1
  >EOF
  #cd /var/www/html/website2
  #cat >index.html <<EOF
  >website2
  >EOF
  
  (注:在/etc/httpd/conf/httpd.conf中有DirectoryIndex index.html index.html.var,表示只读index.html,而不读index.htm,切记)
  
  6)service httpd restart
  
  完成以上设置后,可以通过以下方式访问:
  
  1)打开浏览器
  
  2)输入http://192.168.0.1:80以及http://192.168.0.1:8888



  
  二.基于相同Port不同IP的虚拟主机
  
  1)不同IP地址的配置:
  #cd /etc/sysconfig/network-scripts
  #cp ifcfg-eth0 ifcfg-eth0:1
  #vi ifcfg-eth0:1
  将eth0:1更改为:
  DEVICE=eth0:1
  ONBOOT=YES
  BOOTPROTO=static
  IPADDR=192.168.0.2
  NETMASK=255.255.255.0
  
  2)service network restart
  
  3)vi /etc/httpd/conf/httpd.conf
  
  4)更改虚拟主机部分为:
  <VirtualHost 192.168.0.1:80>
  DocumentRoot /var/www/html/website1
  </VirtualHost>
  <VirtualHost 192.168.0.2:80>
  DocumentRoot /var/www/html/website2
  </VirtualHost>
  
  5)创建目录以及页面文件:
  #mkdir –p /var/www/html/website1
  #mkdir –p /var/www/html/website2
  #cd /var/www/html/website1
  #cat >index.html <<EOF
  >website1
  >EOF
  #cd /var/www/html/website2
  #cat >index.html <<EOF
  >website2
  >EOF
  
  完成以上设置后,可以通过以下方式访问:
  
  1)打开浏览器
  
  2)输入http://192.168.0.1:80以及http://192.168.0.2:80



  
  三.基于域名的虚拟主机的访问(最常用的方法)
  
  1)vi /etc/http/conf/httpd.conf
  
  2)更改虚拟主机部分为:
  NameVirtualHost 192.168.0.1
  <VirtualHost www1.example.com>
  DocumentRoot /var/www/html/website1
  ServerName www1.example.com
  </VirtualHost>
  <VirtualHost www2.example.com>
  DocumentRoot /var/www/html/website2
  ServerName www2.example.com
  </VirtualHost>
  
  (注:以上设置中NameVirtualHost不可以省略,并且要VirtualHost的参数必须NameVirtualHost的参数相符)
  
  3)创建目录以及页面文件:
  #mkdir –p /var/www/html/website1
  #mkdir –p /var/www/html/website2
  #cd /var/www/html/website1
  #cat >index.html <<EOF
  >website1
  >EOF
  #cd /var/www/html/website2
  #cat >index.html <<EOF
  >website2
  >EOF
  
  4)完成以上设置后,可以通过以下方式访问:
  
  1)打开浏览器
  
  2)输入http://www1.example.com 以及 http://www2.example.com
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|运维之家

GMT+8, 2024-4-29 23:39 , Processed in 0.082993 second(s), 14 queries .

Powered by Dirtysea

© 2008-2020 Dirtysea.com.

快速回复 返回顶部 返回列表