httpd_Vhosts文件的配置

昨天在用zend framework时候,配置apache服务器的虚拟机时候,在整htaccess文件的时候.没有注意httpd_Vhosts文件一些细节问题.导致今天以前所有写的东西都进不去.当时就慌神啦.急病乱投医,各种招htaccess文件,从这个文件找问题.但是不论怎么改写,都还是不能解决.最后把重写规则都关闭.把所有跟重写规则的东西都改回原来状态.都注释掉.错误提示由原来的403提示Forbiden到后来404Not found.当时心都凉啦.各种努力后还是没有能解决问题.于是回想昨天做过的没一个细节.然后突然意识到.昨天忽视httpd_Vhosts这个文件.所有当配置好的zf项目可以正常工作的时候,其他所有项目都起不来.所以开始搜寻Vhosts文件找问题.最后顺利搞定.找到问题的症结.所以顺手提笔记录一下httpd_vHosts文件有关的东西跟apache服务器的工作原理..
      Apache服务器是通过加载不同moudle模块来实现各种功能.而httpd_Vhosts文件应该也属于moudle范畴.所以要用这个虚拟机的配置,就得在httpd.ini文件配置中加载ViurtalHost.
        Vhosts的文件的最重要的作用,莫过于在同一台服务器上,布置多个 网站项目是有很重要的作用.然后以前在日志提到过电脑本地的hosts文件的作用.通过httpd_vhosts的文件加本地hosts文件的配合.就可以很好的玩转各种域名重定向.这个在本地测试时候还是挺有意思的.
       Vhosts文件主要配置格式如下.
<VirtualHost *:80>
 ServerName email.com #这句是自己随意取的域名
 DocumentRoot "D:/andy/apache/htdocs/email" #这个是设置项目网站的根目录
 DirectoryIndex login.php login.html    #这句服务器提供的返回页面.一般默认是index.html或者index.php.在这里定以后,可以在浏览器地址栏直接输入域名就可以自动取这个页面.不用在后面加这个具体的页面.
<Directory /> 
 Options FollowSymLinks  #下面是重写规则的定义.跟我今天犯的错误没有多大联系. 
 AllowOverride All       #重写规则的定义.适用于所有文件的访问.
 Order Deny,Allow 
 Allow from all 
</Directory>
</VirtualHost>
    昨天因为httpd_vhosts文件里面本身自带了一些配置,导致不能正常打开项目.然后自己将里面的重写都重写了一遍.就顺利搞定啦.通过这次失误,告诫了我一个道理.细节得重视.理论很重要.而且不能盲从系统本身的配置.不要害怕更改系统本身的配置.要相信自己对理论的掌握跟理解.按照自己理解的放心改.一定没问题.有时间再记录一下.htaccess文件的作用跟有趣的事吧.

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2013-12-10 16:24  小霸王易水寒  阅读(389)  评论(0编辑  收藏  举报