虚拟主机多站点配置

Posted mnhome

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟主机多站点配置相关的知识,希望对你有一定的参考价值。

1、在apache配置文件(httpd.conf)中开启多站点配置,那么多站点配置文件httpd-vhosts.conf所在位置一目了然。

 技术分享图片

  注意:一旦进行多站点配置(httpd-vhosts.conf),那么原来的配置文件(httpd.conf)就失效了。

2、多站点配置

 <VirtualHost>指令: 包含仅作用于指定主机或IP地址的指令,其中包含IP地址、端口号等信息,本机Apache默认端口为8080

 ServerName指令:用来标识虚拟主机的名称和端口号

 ServerAlias指令:匹配一个基于域名的虚拟主机别名

 DocumentRoot指令:组成网络上可见的主文档树的根目录

 <Directory>指令:用来封装一组指令,使之仅对文件空间中的某个目录及其子目录有效,包含根目录路径Directory-path信息,可以使用正则表达来匹配

 AllowOverride None  表示禁用.htaccess文件中的指令 

 注意:Apache对<Directory>的默认访问权限为"Allow from All",意味着Apache将允许任何通过URL映射的文件。不过我们建议加入Order加以屏蔽 

 <Directory  />

    #先禁止,后允许

    Order Deny,Allow

    #只有禁止,没有允许,说明禁止客户端访问

    Deny from All

 </Diretory> 

  然后在您想要使之被访问的目录中覆盖此配置。

  完整代码如下:

  <VirtualHost *.8080>

    #域名,如果没有指定端口号,默认使用请求的端口号。为了加强可靠性和可预测性,应该显式指定端口号

    ServerName  www.motex.com:8080

    #基于域名的虚拟主机别名

    ServerAlias   motex.com  

    DocumentRoot  "c:ampapachehtdocs"

    <Directory "c:ampapachehtdocs">

      #允许客户端遍历更目录及其子目录

      #只允许本机192.168.31.102可以访问虚拟主机www.motex.com

      Order Deny,Allow

      Deny from All

      #本机IP 192.168.31.102

      Allow from 192.168.31.102

    </Directory>

  </VirtualHost>

3、下面来看本人常用的phpmyadmin配置

  技术分享图片

  测试OK

  技术分享图片

 

 

 

  

 

以上是关于虚拟主机多站点配置的主要内容,如果未能解决你的问题,请参考以下文章

虚拟主机(多站点配置)的实现--centos上的实现

进行Apache 多站点虚拟主机配置的步骤

PHP-本地虚拟主机多站点配置

apache 虚拟主机多站点配置教程

Apache虚拟目录和多端口多主机名配置

nginx服务器多虚拟主机配置