美文网首页
Apache二级域名配置

Apache二级域名配置

作者: Zero_R | 来源:发表于2019-02-13 00:14 被阅读0次

    一级域名(baidu.com)也叫作顶级域名,注册一级域名是需要付费的。

    二级域名(image.baidu.com)是一级域名的延伸,所以只要购买了一级域名,二级域名是可以任意配置的。

    其实(www.baidu.com)也是二级域名,只是大家已经习惯使用www为前缀的二级域名作为网站的主域名而已。

    通过DNS解析服务商,可以为每个二级域名绑定不同的主机IP,这样即使只有一个主域名也可以架设多个网站了。
    如果你只有一台主机,并且要在上面建立多个项目,还得通过子域名的方式访问,那么你需要配置 Apache 才行。

    1.配置域名解析:

    image.png

    记录:为你所想要的二级域名

    类型:A

    记录值:指向的服务器IP地址

    一个域名可以有多条解析,如果有多个二级域名则进行添加二级解析即可。


    2.配置httpd.conf(Apache\conf):

    删除 Include conf/extra/httpd-vhosts.conf前面的#注释,用来启用。

    在文件末尾添加:

    NameVirtualHost *:80
    <VirtualHost blog.weixy666.cn:80>
        DocumentRoot "C:\phpStudy\WWW\blog"
        ServerName blog.weixy666.cn
        <Directory "C:\phpStudy\WWW\blog">
            Require local
        </Directory>
    </VirtualHost>
    

    在这一步中你需要将 DocumentRoot(项目路径)和 ServerName(自定义域名)修改成你自己的。Directory 是用户可以访问的目录,和项目路径保持一致就行。注意 Directory 中的参数 Require local,它的意思是只允许本地访问,如果你把它改成 Require all granted,那么任何人都可以访问这个目录了。


    3.配置httpd-vhosts.conf(Apache\conf\extra):

    注释httpd-vhosts.conf文件中所有内容。

    添加内容:

    <Directory />
        AllowOverride all
        Require all granted
    </Directory>
    
    NameVirtualHost *:80
    
    <VirtualHost *:80>
      ServerAdmin wzryouxiang@126.com
      DocumentRoot "C:\phpStudy\WWW\blog"
      ServerName blog.weixy666.cn
    </VirtualHost>
    

    如果想添加多个二级域名则再次添加VirtualHost标签,每个二级域名对应一个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 文件中注册。

    修改配置文件后记得重启Apache服务器,如果无法启动请检查修改的内容。


    相关文章

      网友评论

          本文标题:Apache二级域名配置

          本文链接:https://www.haomeiwen.com/subject/btoleqtx.html