Apache 配置多站点访问「为项目分配二级域名」
一级域名(baidu.com)也叫作顶级域名,注册一级域名是需要付费的。
而二级域名(image.baidu.com)是一级域名的延伸,所以只要购买了一级域名,二级域名是可以任意配置的。
其实(www.baidu.com)也是二级域名,只是大家已经习惯使用www为前缀的二级域名作为网站的主域名而已。
通过DNS解析服务商,可以为每个二级域名绑定不同的主机IP,这样即使只有一个主域名也可以架设多个网站了。
如果你只有一台主机,并且要在上面建立多个项目,还得通过子域名的方式访问,那么你需要配置 Apache 才行。
===================配置本地域名=====================
如果仅仅是作为本地访问,只需要配置 hosts 和 httpd.conf 即可
1.在 host 文件(C:\Windows\System32\drivers\etc)中添加「127.0.0.1 自定义域名」
- 127.0.0.1 test.host.com
通过上面的步骤,就可以使用 test.host.com 来访问本地服务器了。不过仅仅只做这些微薄的工作,服务器是不会知道 localhost 和 test.host.com 的区别的。所以还需要为 Apache 配置虚拟主机,让其为不同的域名请求分配不同的处理路径。
2.在 httpd.conf 文件(C:\wamp64\bin\apache\apache2.4.17\conf)中添加
- NameVirtualHost *:
- <VirtualHost test.host.com:>
- DocumentRoot "C:/Users/Administrator/Desktop/test"
- ServerName test.host.com
- <Directory "C:/Users/Administrator/Desktop/test">
- Require local
- </Directory>
- </VirtualHost>
在这一步中你需要将 DocumentRoot(项目路径)和 ServerName(自定义域名)修改成你自己的。Directory 是用户可以访问的目录,和项目路径保持一致就行。注意 Directory 中的参数 Require local,它的意思是只允许本地访问,如果你把它改成 Require all granted,那么任何人都可以访问这个目录了。
==================分配网站域名=====================
如果是打算部署在实际的项目中,那么情况会相对麻烦些,不过思想仍然是将所有二级域名请求都交给同一服务器处理,然后通过虚拟主机为不同的域名请求分配不同的处理路径。
1.通过云解析服务商为主域名分配子域名,再为子域名绑定主机IP。
2.修改 httpd.conf 文件,去掉 Include conf/extra/httpd-vhosts.conf 前面的注释。
3.注释 httpd-vhosts.conf 文件(C:\wamp64\bin\apache\apache2.4.17\conf\extra)中所有内容,然后添加
- <Directory />
- AllowOverride all
- Require all granted
- </Directory>
- NameVirtualHost *:
- <VirtualHost *:>
- ServerAdmin 「管理员邮箱」
- DocumentRoot 「项目根目录」
- ServerName 「二级域名」
- ServerAlias 「域名别名」
- ErrorLog 「错误日志」
- CustomLog 「访问日志」
- </VirtualHost>
Directory 标签用于给所有目录设置访问权限
AllowOverride all 允许 .htaccess 对URL进行重写 / AllowOverride none 忽略 .htaccess 文件
Require all granted 允许外部访问 / Require all denied 禁止外部访问
NameVirtualHost 是固定形式,用于使 VirtualHost 标签生效
VirtualHost 标签用于为二级域名绑定虚拟主机
每一个二级域名对应一个 VirtualHost 标签,有多少二级域名,就需要多少个 VirtualHost 标签
DocumentRoot 和 ServerName 是必填项,其余可选
注意:由于 www 域名属于特殊的二级域名,所以它也需要在 httpd-vhosts.conf 文件中注册
==================注意事项======================
二级域名定义规则
www:网站的主入口(www.baidu.com)
mail:通常用于解析邮箱服务器(mail.baidu.com)
m:用于手机网站的域名(m.baidu.com)
Apache 访问控制权限
2.2 版本允许所有请求:Order allow,deny #排序,先允许后拒绝 Allow from all #允许所有
2.4 版本允许所有请求:Require all granted #允许所有
重启服务器
修改完 Apache 的配置文件后,必须重启服务器配置才能生效
Apache 配置多站点访问「为项目分配二级域名」的更多相关文章
- apache 配置跨域访问
在httpd.conf找到 去掉# LoadModule headers_module modules/mod_headers.so 然后在 独立域名配置 加入 Header set Access- ...
- apache配置多站点
在httpd.conf文件中,有如下配置(注:舍去httpd.conf文件的注释内容) Listen 80 ServerName localhost <Directory /> Allow ...
- wamp 配置多站点访问
1:在f:\wamp\bin\apache\apache2.2.21\conf目录下打开 httpd.conf 查找到 #include conf/extra/httpd-vhosts.conf 把前 ...
- warmpserver 配置别人能访问自己的项目地址
1.首先必须给自己的ip和域名地址给别人,绑定hosts 如:10.33.31.20 www.bai.com 2.找到apache 的 httpd.conf . 用notepadd打开,然后找到 ...
- Apache 配置IP站点
配置临时生效 IP: [root@Nagios-Server extra]# ifconfigeth0:0 192.168.1.126/24 up [root@Nagios-Server extra] ...
- 2.4配置的热更新「深入浅出ASP.NET Core系列」
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 大家知道通常我们修改网站的配置文件比如,webconfig的时候,网站需要重启才能读取到最新的修改,所谓热更新就是 ...
- 2.5配置的框架浅析「深入浅出ASP.NET Core系列」
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 配置的使用流程 //第一步.初始化Builder var builder = new ConfigurationB ...
- windows 下的 Apache 二级域名 目录绑定配置
通常我们注册的域名都是顶级域名 如 www.potatog.com,我们希望这个域名可以访问服务器的不同网站或者不同功能等等 可能会这样 www.potatog.com/api 或者 www.pot ...
- 利用nginx泛域名解析配置二级域名和多域名
利用nginx泛域名解析配置二级域名和多域名 网站的目录结构为 html ├── bbs └── www html为nginx的安装目录下默认的存放源代码的路径. bbs为论坛程序源代码路径 www为 ...
随机推荐
- 使用Bandwagon的VPS第一件事《FQ》
说点闲话:昨天的长靴子到了,哎呀,今天那个高兴,踩着我的8厘米的过膝靴就出门上专业外语去了,扎了个麻花辫子,那个心情好哟,搞得我都不想继续学习linux平台上的C语言了,好想逛街----秀秀我的鞋子, ...
- NPOI操作EXCEL(四)——反射机制批量导出excel文件
前面我们已经实现了反射机制进行excel表格数据的解析,既然有上传就得有下载,我们再来写一个通用的导出方法,利用反射机制实现对系统所有数据列表的筛选结果导出excel功能. 我们来构想一下这样一个画面 ...
- .net 单点登录实践
前言 最近轮到我在小组晨会来分享知识点,突然想到单点登录,准备来分享下如何实现单点登录,所以有了下文.实现方案以及代码可能写得不是很严谨,有漏洞的地方或者错误的地方欢迎大家指正. 刚开始头脑中没有思路 ...
- 从2G到5G, 基站天线过去与未来
在蜂窝移动通信系统中,天线是电路信号与空间辐射电磁波的转换器,是移动通信系统的末梢关键组成部分. 从2G到4G,移动基站天线经历了全向天线.定向单极化天线.定向双极化天线.电调单极化天线.电调双极化天 ...
- Android Studio 常见异常解决办法
Error:Failed to crunch file D:\Englis_installation_directory\AndroidStudio\AndroidWorkSpace\YoukAndr ...
- 关于若干php 表单 的重新审视
对于表单验证来说 应该在任何可能的时候对用户输入进行验证(通过客户端脚本).浏览器验证速度更快,并且可以减轻服务器的负载. 如果用户输入需要插入数据库,您应该考虑使用服务器验证.在服务器验证表单的一种 ...
- NodeJs入门学习(一)
NodeJs是针对前端工程师向web后端深入理解的一门很好的语言. 首先,记录NodeJS几大特性,后续补充: 一.Node.js 是单进程单线程应用程序,但是通过事件和回调支持并发,所以性能非常高. ...
- [日常训练]string
Description 给定一个长度为$n$的字符串,串中的字符保证是前$k$个小写字母.你可以在字符串后再添加$m$个字符,使得新字符串所包含的不同的子序列数量尽量多.当然,前提是只能添加前$k$个 ...
- php的empty(),trim(),strlen()方法
如果empty()函数的参数是非空或非零的值,则empty()返回FALSE.换句话说,"".0."0".NULL.array().var$var:以及没有任何 ...
- mybatis : trim标签, “等于==”经验, CDATA标签 ,模糊查询CONCAT,LIKE
一.My Batis trim标签有点类似于replace效果. trim 属性, prefix:前缀覆盖并增加其内容 suffix:后缀覆盖并增加其内容 prefixOverrides:前缀判断的条 ...