一级域名(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 配置多站点访问「为项目分配二级域名」的更多相关文章

  1. apache 配置跨域访问

    在httpd.conf找到  去掉# LoadModule headers_module modules/mod_headers.so 然后在 独立域名配置 加入 Header set Access- ...

  2. apache配置多站点

    在httpd.conf文件中,有如下配置(注:舍去httpd.conf文件的注释内容) Listen 80 ServerName localhost <Directory /> Allow ...

  3. wamp 配置多站点访问

    1:在f:\wamp\bin\apache\apache2.2.21\conf目录下打开 httpd.conf 查找到 #include conf/extra/httpd-vhosts.conf 把前 ...

  4. warmpserver 配置别人能访问自己的项目地址

    1.首先必须给自己的ip和域名地址给别人,绑定hosts  如:10.33.31.20 www.bai.com 2.找到apache 的  httpd.conf  . 用notepadd打开,然后找到 ...

  5. Apache 配置IP站点

    配置临时生效 IP: [root@Nagios-Server extra]# ifconfigeth0:0 192.168.1.126/24 up [root@Nagios-Server extra] ...

  6. 2.4配置的热更新「深入浅出ASP.NET Core系列」

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 大家知道通常我们修改网站的配置文件比如,webconfig的时候,网站需要重启才能读取到最新的修改,所谓热更新就是 ...

  7. 2.5配置的框架浅析「深入浅出ASP.NET Core系列」

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 配置的使用流程 //第一步.初始化Builder var builder = new ConfigurationB ...

  8. windows 下的 Apache 二级域名 目录绑定配置

    通常我们注册的域名都是顶级域名  如 www.potatog.com,我们希望这个域名可以访问服务器的不同网站或者不同功能等等 可能会这样 www.potatog.com/api 或者 www.pot ...

  9. 利用nginx泛域名解析配置二级域名和多域名

    利用nginx泛域名解析配置二级域名和多域名 网站的目录结构为 html ├── bbs └── www html为nginx的安装目录下默认的存放源代码的路径. bbs为论坛程序源代码路径 www为 ...

随机推荐

  1. [LeetCode] Single Number III 单独的数字之三

    Given an array of numbers nums, in which exactly two elements appear only once and all the other ele ...

  2. JAVA的反射理解

    1----------------------------反射的概念----------------------------------------------- JAVA的反射机制是在运行状态中,对 ...

  3. Zend Framework 1 - Quick Start

    创建 Zend 项目 要创建 Zend 项目,首先要下载并解压 Zend Framework. 安装 Zend Framework 下载最新的 Zend Framework 1.12.20 源码包,( ...

  4. 【Quartz】配置最简单的集群

    在许多情况,我们希望我们的定时任务是可靠的,不会因系统故障.机器宕机而导致某一笔定时任务不能按时运行.这种情况下,我们就需要为Quartz做个集群. 最简单的情况,有两台机器或两个应用,同时维护一批定 ...

  5. CephRGW 在多个RGW负载均衡场景下,RGW 大文件并发分片上传功能验证

    http://docs.ceph.com/docs/master/radosgw/s3/objectops/#initiate-multi-part-upload 根据分片上传的API描述,因为对同一 ...

  6. [转]如何设置eclipse中js默认打开为java Editor

    打开window-preference -> General-Editors-File Associator 看到右边的.js下边就是设置默认打开方式了 转自百度知道:http://zhidao ...

  7. log4j+mybatis打印数据库日志

    参考文献:一:http://blog.csdn.net/rangqiwei/article/details/50825090 二:http://www.mybatis.org/mybatis-3/zh ...

  8. jQuery遍历checkbox

    $("input[type='checkbox']").each(function(){ var value = $(this).val(); //获得值 $(this).attr ...

  9. 【hihoCoder 1454】【hiho挑战赛25】【坑】Rikka with Tree II

    http://hihocoder.com/problemset/problem/1454 调了好长时间,谜之WA... 等我以后学好dp再来看为什么吧,先弃坑(╯‵□′)╯︵┻━┻ #include& ...

  10. php 2038年问题

    在mysql中存放日期时可以存放整数 (int),  而int可以存放的数据最大为4294967295(无符号), 而php最大为2147483647, 要显示一个大于2038年日期,该如何处理 ? ...