Apache 配置虚拟主机三种方式

原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html

一、基于IP

1. 假设服务器有个IP地址为192.168.1.10,使用ifconfig在同一个网络接口eth0上绑定3个IP:

[root@localhost root]# ifconfig eth0:1 192.168.1.11
[root@localhost root]# ifconfig eth0:2 192.168.1.12
[root@localhost root]# ifconfig eth0:3 192.168.1.13

2. 修改hosts文件,添加三个域名与之一一对应:

192.168.1.11   www.test1.com
192.168.1.12   www.test2.com
192.168.1.13   www.test3.com

3. 建立虚拟主机存放网页的根目录,如在/www目录下建立test1、test2、test3文件夹,其中分别存放1.html、2.html、3.html

/www/test1/1.html
/www/test2/2.html
/www/test3/3.html

4. 在httpd.conf中将附加配置文件httpd-vhosts.conf包含进来,接着在httpd-vhosts.conf中写入如下配置:

<VirtualHost 192.168.1.11:80>
  ServerName www.test1.com
  DocumentRoot /www/test1/
  <Directory "/www/test1">
     Options Indexes FollowSymLinks
     AllowOverride None
     Order allow,deny
     Allow From All
   </Directory>
</VirtualHost>

<VirtualHost 192.168.1.12:80>
  ServerName www.test1.com
  DocumentRoot /www/test2/
  <Directory "/www/test2">
     Options Indexes FollowSymLinks
     AllowOverride None
     Order allow,deny
     Allow From All
   </Directory>
</VirtualHost>

<VirtualHost 192.168.1.13:80>
  ServerName www.test1.com
  DocumentRoot /www/test3/
  <Directory "/www/test3">
     Options Indexes FollowSymLinks
     AllowOverride None
     Order allow,deny
     Allow From All
   </Directory>
</VirtualHost>

5. 大功告成,测试下每个虚拟主机,分别访问www.test1.com、www.test2.com、www.test3.com

二、基于主机名

1. 设置域名映射同一个IP,修改hosts:

192.168.1.10  www.test1.com
192.168.1.10  www.test2.com
192.168.1.10  www.test3.com

2. 跟上面一样,建立虚拟主机存放网页的根目录

/www/test1/1.html
/www/test2/2.html
/www/test3/3.html

3. 在httpd.conf中将附加配置文件httpd-vhosts.conf包含进来,接着在httpd-vhosts.conf中写入如下配置:

为了使用基于域名的虚拟主机,必须指定服务器IP地址(和可能的端口)来使主机接受请求。可以用NameVirtualHost指令来进行配置。 如果服务器上所有的IP地址都会用到, 你可以用*作为NameVirtualHost的参数。在NameVirtualHost指令中指明IP地址并不会使服务器自动侦听那个IP地址。 这里设定的IP地址必须对应服务器上的一个网络接口。

  下一步就是为你建立的每个虚拟主机设定<VirtualHost>配置块,<VirtualHost>的参数与NameVirtualHost指令的参数是一样的。每个<VirtualHost>定义块中,至少都会有一个ServerName指令来指定伺服哪个主机和一个DocumentRoot指令来说明这个主机的内容存在于文件系统的什么地方。

  如果在现有的web服务器上增加虚拟主机,必须也为现存的主机建造一个<VirtualHost>定义块。其中ServerName和DocumentRoot所包含的内容应该与全局的保持一致,且要放在配置文件的最前面,扮演默认主机的角色。

NameVirtualHost *:80
<VirtualHost *:80>  

  ServerName *

  DocumentRoot /www/

</VirtualHost>

<VirtualHost *:80>

  ServerName www.test1.com

  DocumentRoot /www/test1/

  <Directory "/www/test1">

    Options Indexes FollowSymLinks

    AllowOverride None

    Order allow,deny

    Allow from all

  </Directory>

</VirtualHost>

<VirtualHost *:80>

  ServerName www.test2.com

  DocumentRoot /www/test2/

  <Directory "/www/test2">

    Options Indexes FollowSymLinks

    AllowOverride None

    Order allow,deny

    Allow from all

  </Directory>

</VirtualHost>

<VirtualHost *:80>

  ServerName www.test3.com

  DocumentRoot /www/test3/

  <Directory "/www/test3">

    Options Indexes FollowSymLinks

    AllowOverride None

    Order allow,deny

    Allow from all

  </Directory>

</VirtualHost>

4. 大功告成,测试下每个虚拟主机,分别访问www.test1.com、www.test2.com、www.test3.com

三、基于端口

1.  修改配置文件

  将原来的

    Listen 80
      改为
      Listen 80
      Listen 8080

2. 更改虚拟主机设置:

<VirtualHost 192.168.1.10:80>
    DocumentRoot /var/www/test1/
    ServerName www.test1.com
</VirtualHost>

<VirtualHost 192.168.1.10:8080>
    DocumentRoot /var/www/test2
    ServerName www.test2.com
</VirtualHost>

转载于:https://www.cnblogs.com/irockcode/p/6254462.html

【转】Apache 配置虚拟主机三种方式相关推荐

  1. Apache 配置虚拟主机三种方式

    原文地址:http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假设服务器有个IP地址为192.168 ...

  2. Nginx配置虚拟主机三种方式

    Nginx 配置虚拟主机,总共有三种方式,基于多IP,基于多端口,基于多域名,其中基于多域名是企业中最常用的一种方式,基于多端口的方式,主要用于本机配置项目. nginx参数详解 基于多IP的方式 [ ...

  3. 虚拟主机3种方式nginx/apache+跨域知识点整理

    目录 referer.prototype.array.json笔记整理: [http://t.csdn.cn/s4P8x](http://t.csdn.cn/s4P8x) 虚拟主机3种方式nginx/ ...

  4. Apache配置虚拟主机三大问题--自己的相关坑

    Apache配置虚拟主机三大问题 第一大问题:配置失败 主要是apache 2.4以后配置步骤不再像以前那样了,正确步骤如下: 第一步:在httpd.conf中开启虚拟主机配置功能 #Include ...

  5. windows下apache配置虚拟主机的两个方法

    windows下apache配置虚拟主机方法一: 对httpd.conf进行设置: 1.注释以下三行 #ServerAdmin #ServerName #DocumentRoot 2.去掉mod_pr ...

  6. Apache配置虚拟主机----基于域名的虚拟主机技术

    Apache配置虚拟主机(基于域名的虚拟主机技术) 1.关闭防火墙 systemctl disable firewalld selinux 0 2.修改一下主配置文件 vi /usr/local/ap ...

  7. Apache配置虚拟主机无效

    Apache配置虚拟主机无效 本今天电脑重新安装了一下apache,结果配置好虚拟域名之后,却一直无法访问:localhost 一直是显示it works 状态:配置好了虚拟域名之后,输入任何配置的域 ...

  8. httpd虚拟主机三种模式配置与https配置

    httpd 文章目录 httpd 1:配置三种不同风格的虚拟主机 2:https配置 1:配置三种不同风格的虚拟主机 虚拟主机:一个网站就是一个虚拟主机 虚拟主机有三类: 相同IP不同端口 不同IP相 ...

  9. Apache 配置虚拟主机

    因产品上线,并且我们只有一台服务器,所以不能在服务器上测试迭代,当然喽,如果有多台的话,可以一台当测试机 ,一台当正式机. 我在做的时候其实一开始并没有先想到 wamp  是IIS 在这折腾了3 个小 ...

最新文章

  1. __proto__和prototype
  2. RT/Metro商店应用如何如何获取图片的宽高
  3. JDK/JAVA 13正式版发布,此版本带来了以下几大新特性
  4. Hadoop/Spark相关面试问题总结
  5. IDEA開發 java web 初步
  6. html5音乐播放器设计论文,基于微信小程序的音乐播放器设计和毕业论文
  7. 马化腾定义腾讯是普通公司,这波重新定义“普通”可还行......
  8. 4.4 核对矩阵的维数
  9. GC详解及Minor GC和Full GC触发条件
  10. Git简洁教程:本地项目如何与GitHub互连
  11. Truecrypt隐形操作系统终极方案
  12. Inspinia_admin-V2.3原版(英文)
  13. mac端本地项目上传到码云
  14. 闲谈摩根 --兼答关于JP摩根和摩根斯坦利的渊源和区别,其他的摩根八卦
  15. mta android 网速监控,网速监控
  16. Mac pro M2芯片如何进入恢复模式
  17. 培养出儿子清华女儿北大的家庭十条家规
  18. 如何做一个基于微信校园运动场地预约小程序系统毕业设计毕设作品
  19. 迁移学习——综述文献
  20. ping主机时显示 Request Time Out Destination Unreachable TTL Expired in transit

热门文章

  1. 剑指offer--二维数组的查找
  2. 线程执行一半断了_有的线程它死了,于是它变成一道面试题
  3. 粗暴,干就完了----徐晓冬似的C语言自学笔记-----实现一个链表结构
  4. Spring Boot实践——基础和常用配置
  5. 【NOIP2016】换教室
  6. SAP RFC 获取BDC 消息文本的实现
  7. 照相机滤镜使用,优化解码和滤镜导致的预览卡屏现象
  8. aix 7 oracle 10g,在64位aix上安装oracle10g
  9. linux中配置phpcms v9 中的sphinx
  10. Unhandled exception: org.springframework.beans.factory.BeanDefinitionStoreException