在前:我使用的是Xampp,所以路径可能不同

找到apache\conf\extra\httpd-vhosts.conf, 如果没有的话请自己新建httpd-vhosts.conf文件, 并且在httpd.confInclude conf/extra/httpd-vhosts.conf

NameVirtualHost *:80

## 如果没有匹配的ServerName则默认选择第一个配置
<VirtualHost *:80>
DocumentRoot "D:/Apps/xampp/htdocs/"
ServerName localhost
##ErrorLog "logs/dummy-host2.example.com-error.log"
##CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost> <VirtualHost *:80>
ServerAdmin admin@demo.com
DocumentRoot "D:/Apps/xampp/htdocs/www/cdn"
ServerName cdn.demo.com
ServerAlias cdn.test.com
##ErrorLog "logs/cdn.demo.com.com-error.log"
##CustomLog "logs/cdn.demo.com.com-access.log" common
</VirtualHost> <VirtualHost *:80>
ServerAdmin admin@demo.com
DocumentRoot "D:/Apps/xampp/htdocs/www/admin"
ServerName admin.demo.com
ServerAlias admin.test.com
##ErrorLog "logs/admin.demo.com-error.log"
##CustomLog "logs/admin.demo.com-access.log" common
</VirtualHost>

修改host文件将cdn.demo.comadmin.demo.com指向127.0.0.1

重启后我们就可以通过cdn.demo.com来访问apache目录下的cdn文件夹;同样,可以通过admin.demo.com来访问admin文件夹

admin.demo.comcdn.demo.com可以是不同的域名

注意httpd-vhosts.conf

第一条VirtualHost配置优先级最高, 如果请求的地址在其他VirtualHost配置中未找到,则默认指向第一条, 通常也被称为主服务器

VirtualHost *:80 监听任何80端口的访问

VirtualHost * 监听任何地址

VirtualHost 127.0.0.1:80 仅监听127.0.0.1:的访问

VirtualHost后面可以有多个url, 用空格分割

ServerAdmin 管理员联系方式,可以在地址访问错误时现在在页面上,可忽略

ServerName 被映射到的域名

ServerAlias别名, 例如上面的, 通过别名cdn.test.com也可以访问到cdn.demo.com的内容

DocumentRoot 映射目录, 即文件存在的地址, 如果映射目录不存在则可能导致apache启动失败

关于其他包括代理,目录权限等更多内容请参考官方文档

Apache虚拟目录实现同一个IP绑定多个域名的更多相关文章

  1. PHP同一个IP绑定多个域名(六)

    原理图 一个ip绑定如何绑定多个域名? 解决方案: A.方案一:端口号来区别不同的站点 1.绑定一个网站 1.1先开发好自己的网站 d:/ApacheProject/myanimal 1.2 配置我们 ...

  2. apache虚拟目录配置实例

    apache虚拟目录配置实例 一.首先,开启虚拟主机配置 在文件httpd.conf中找到: include conf/extra/httpd-vhosts.conf #开启 二.对httpd-vho ...

  3. 【PHP编程之路-1】设置apache虚拟目录

    概述 设置apache虚拟目录 1.开启“虚拟目录配置文件”httpd-vhosts.conf 文件路径:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-v ...

  4. Apache虚拟目录

    Apache虚拟目录  1.打开Apache的配置文件httpd.conf,并去掉#Include conf/extra/httpd-vhosts.conf前面的#! 2.在httpd.conf 末尾 ...

  5. 在apache虚拟目录配置

    在apache虚拟目录配置中 <VirtualHost *:80>xxx xxx xxx</VirtualHost> 不能写成 <VirtualHost *>xxx ...

  6. Apache 虚拟目录和默认首页的设置

    Apache虚拟目录和默认首页的设置,用apache服务器的朋友必须要懂的. 虚拟目录 1.找到"conf/httpd.conf" 文件 2.在节点:<IfModule al ...

  7. Ubuntu 配置Apache虚拟目录

    http://blog.csdn.net/spring21st/article/details/6589300 Ubuntu 配置Apache虚拟目录 http://blog.csdn.net/spr ...

  8. apache 虚拟目录

    补充:必须使用80端口才能正常使用  C:\Windows\System32\drivers\etc\hosts 最后添加上: 127.0.0.1 shenyi.com 127.0.0.1 offli ...

  9. Apache虚拟目录(二)

    一.PHP生命周期 二.轻量级的PHP 轻量级PHP产品由lighttpd,nginx等等 Apache是基于模块化设计的 了解Apache源代码可以从main.c开始 操作系统上跑了APR运行库 m ...

随机推荐

  1. HTML5篇

    [HTML5十大新特性] (1) 语义化标签 (2) 增强型表单 (3) 视频和音频 (4) canvas绘图 (5) SVG绘图 (6) 地理定位 (7) 拖放API (8) Web Worker ...

  2. 入门 Webpack,看这篇就够

    写在前面的话 阅读本文之前,先看下面这个webpack的配置文件,如果每一项你都懂,那本文能带给你的收获也许就比较有限,你可以快速浏览或直接跳过:如果你和十天前的我一样,对很多选项存在着疑惑,那花一段 ...

  3. 高级UI晋升之View渲染机制(二)

    更多Android高级架构进阶视频学习请点击:https://space.bilibili.com/474380680 优化性能一般从渲染,运算与内存,电量三个方面进行,今天开始说聊一聊Android ...

  4. Ubuntu18.04 一键升级Python所有第三方包

    一.pip是什么 pip 是 Python 包管理工具,该工具提供了对Python 包的查找.下载.安装.卸载的功能. 二.升级pip版本 1.默认Ubuntu自带的pip (pip 9.0.1)是基 ...

  5. eduCF#61 F. Clear the String /// 区间DP 消除连续一段相同字符 全部消完的最少次数

    题目大意: 给定字符串 每次消除可消除连续的一段相同的字符的子串 求消除整个字符串的最少消除次数 #include <bits/stdc++.h> using namespace std; ...

  6. mysql全套

    1. 什么是数据库 存储数据的仓库 2. 什么数据: 大家所知道的都是数据.比如:你同学的名字,年龄,性别等等 3. 数据库概念 1.数据库服务器 2.数据库管理系统 重点 3.库 4.表 5.记录 ...

  7. vim 中 ctags的应用

    为了方便查询代码段中代码的最终的定义 在linux的vim便以其中可以使用ctags 使用步骤: 1. 安装 ctags :   sudo apt-get install ctags     2. 生 ...

  8. http11.Http11OutputBuffer.SocketOutputBuffer.doWrite

    这是一个错误. 我在spring框架中,创建了一个基类SuperBaseController, 并且使用了@ModelAttribute用来给HttpServletRequest和HttpServle ...

  9. 笔记58 Spring+Hibernate整合(一)

    Spring+Hibernate整合 一.整合思路 使DAO继承HibernateTemplate这个类 HibernateTemplate这个类提供了setSessionFactory()方法用于注 ...

  10. wordpress Warning: Parameter 2 to qtranxf_postsFilter() expected to be a reference

    wordpress qtranslate-x Warning: Parameter 2 to qtranxf_postsFilter() expected to be a reference Para ...