有很多平时喜欢钻研的童鞋会发现,为什么有时候自己访问某XXse网站时,总是更新IP地址,内容却与以前一样。这个时候就要了解虚拟主机的概念了。了解这个概念,能够帮助运维同学,更内涵的隐藏自己的主机,或者让一台apache支持多个网站的共同运营。

参考资料:
1 http://httpd.apache.org/docs/2.2/
2《Apache cookbook》

虚拟主机寻址方式

IP地址方式:每台虚拟主机都有其唯一的IP地址

名称寻址方式:多台虚拟主机会以不同的名称在同一IP地址上运行

 以名称寻址的虚拟主机
使用NameVirtualHost *指令以及<VirtualHost>区块

  1. ServerName 127.0.0.1
  2. NameVirtualHost * #表示所设定的主机可在所有的地址上运行
  3. <VirtualHost *>
  4. ServerName test1.name #默认的第一个主机会接收未列出虚拟主机的请求
  5. DocumentRoot "C:/Apache2.2/htdocs/test1"
  6. </VirutalHost>
  7. <VirtualHost *>
  8. ServerName test2.name
  9. DocumentRoot "C:/Apache2.2/htdocs/test2"
  10. </VirutalHost>
指定一台名称寻址的主机位默认服务器,并在查找不到主机时,转向默认网页

  1. <VirtualHost *>
  2. ServerName default
  3. DocumentRoot /www/htdocs
  4. ErrorDocument 404 /site.html
  5. </VirutualHost>

对特定主机设置多个名称

  1. ServerAlias www.cu.com chinaunix.cu

以IP寻址的虚拟主机

可以在系统上设定多个IP,然后各自支持某个网站

  1. ServerName 127.0.0.1
  2. <VirtualHost 10.0.0.1>
  3. ServerName test.name
  4. DocumentRoot "C:/Apache2.2/htdocs/test1"
  5. </VirtualHost>
  6. <VirtualHost 10.0.0.2>
  7. ServerName test2.name
  8. DocumentRoot "C:/Apache2.2/htdocs/test2"
  9. </VirutalHost>
建立IP寻址的默认虚拟主机

  1. <VirtualHost _default_>
  2. DocumentRoot /www/htdocs
  3. </VirtualHost>
  4. #_default_ 建立虚拟主机,处理所有未设定虚拟主机“地址:端口号”的请求
  5. #_default_ 可与端口号同时使用 _default_:443 会接受443端口号的所有未设定虚拟主机的请求
端口号寻址的虚拟主机

  1. Listen 8080
  2. <VirtualHost 10.0.0.1:8080>
  3. DocumentRoot "C:/Apache2.2/htdocs/test_port8080"
  4. </VirtualHost>
  5. Listen 8081
  6. <VirtualHost 10.0.0.1:8081>
  7. DocumentRoot "C:/Apache2.2/htdocs/test2_port8081"
  8. </VirtualHost>
这种用法不常见,因为请求时,很麻烦,需要填入端口号:比如 www.test.com:8080/
在多个地址上显示相同的网页内容

  1. NameVirtualHost 192.168.1.1
  2. NameVirtualHost 170.1.2.3
  3. <VirtualHost 192.168.1.1 170.1.2.3>
  4. DocumentRoot "C:/Apache2.2/htdocs/test"
  5. </VirtualHost>

最新文章

  1. Vertical Menu ver4
  2. ASP开发入门+实战电子书共50本 —下载目录
  3. CI框架分页类
  4. Swift-6-函数
  5. map的实现
  6. ISO8583报文解析
  7. [swustoj 404] 最小代价树
  8. 【转】AAC ADTS格式分析
  9. 编写在浏览器中不弹出警告的ActiveX控件
  10. oc 导航栏跳转指定界面
  11. uva11059(最大乘积)
  12. Python--(爬虫与数据库的连接)
  13. 2019年桌面Linux需要做好的7件事
  14. R常用操作
  15. semantic ui框架学习笔记二
  16. cf949C 建模,SCC缩点
  17. Visual Studio 2015 开发Android Cordova出现unsupported major minor version 52.0错误的解决方法
  18. maven项目无法新增java test目录的问题
  19. 转 linux下面apache2.0.52+php5+gd2+mysql
  20. VMware Workstation and Device/Credential Guard are not compatible

热门文章

  1. 机器学习:逻辑回归(OvR 与 OvO)
  2. &amp;(((struct A*)NULL)-&gt;m_float)---offsetof
  3. [置顶] strcpy()与strncpy()的区别
  4. ManualResetEvent 用法
  5. WCF宿主Window Service Demo
  6. create-react-app脚手架中配置sass
  7. 问题:C#控制台;结果:C#限制程序只能运行一個实例 (防多开)
  8. leetcode458
  9. 转载 : JSP取得绝对路径
  10. Spring装配各种类型bean