在前:我使用的是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. tomcat+apache+jk

    安装JDK下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html安装 rpm ...

  2. mysql服务命令行操作

    启动 net start mysql 关闭 net stop mysql 登陆 mysql -hlocalhost -uusername -ppassword 退出 exit 显示数据库 show d ...

  3. Jenkins配置gitlab

    一.免密公钥登陆1 登陆gitlab 搜ssh Keys 2 添加在Jenkins 服务器本地创建好的公钥 保存完成 也可以手动添加 到/var/opt/gitlab/.ssh/authorized_ ...

  4. 通过jquery获取页面信息

    获取浏览器显示区域(可视区域)的高度 : $(window).height(); 获取浏览器显示区域(可视区域)的宽度 :$(window).width(); 获取页面的文档高度 $(document ...

  5. 2018阿里云云数据库RDS核心能力演进

    摘要: 2018年云数据库RDS发展上,不但针对MySQL.SQL Server.PostgreSQL提供了适合个人入门用户的基础版产品,以实惠的价格普惠广大中小用户.更加入最新的MariaDB TX ...

  6. NOIp2018集训test-9-2(pm)

    其实这套题我爆0了,T1define 写成ddefine编译错误 T2有两个变量爆int 但是我看zwh不在悄悄地改了,我心里还是十分愧疚(没有)的.主要是林巨已经虐我125了要是再虐我200分我大概 ...

  7. NX二次开发-UFUN选择草图对话框UF_UI_select_sketch

    #include <uf.h> #include <uf_ui.h> UF_initialize(); //选择草图对话框 char sMessage[] = "选择 ...

  8. 【JS】 +function(){} 作用

    原文地址:https://www.jianshu.com/p/a2666014a280 瞎扯 在JS中,经常会遇到下面这种 代码, 到底 在 function 前面加一个 一元操作符, 有什么作用呢? ...

  9. prettier包升级后vue项目运行报错

    今天用vue-cli新建vue项目的时候,发现项目怎么都跑不起来. 最后通过与以前项目作比较,发现prettier这个依赖的版本从原来的1.12.0升级成了1.13.1.我也不太清楚为什么升级后项目跑 ...

  10. 注意:字符串substring方法在jkd6,7,8中的差异。

    标题中的substring方法指的是字符串的substring(int beginIndex, int endIndex)方法,这个方法在jdk6,7是有差异的. substring有什么用? sub ...