分享

Apache下运行多实例Zend?Framework!好文章!!

 sumi2005 2012-05-30

之前在apache下配置Zend Framework,都是使用最简单的方式,便是一次只能有一个Zend Framework工程在运行,如果要调试另一个工程,必须要修改apache的配置文件,很麻烦,后来在网上找到了通过VirtualHost 方式来配置,使多个ZendFramework工程同时运行。好,闲话少说,下面说一下具体配置。我的目标是两个ZendFramework工程在 apache下同时运行,这两个Zend Framework工程分别是:

1. XXX工程,位置是D:/project/php_wp/xxx/

2. YYY工程,位置是D:/project/php_wp/yyy/

  1. 打开apache的配置文件对httpd.conf,注释下面三个选项。
    #ServerAdmin
    #ServerName
    #DocumentRoot
  2. 找到 #Include conf/extra/httpd-vhosts.conf 这行,将行首的 '#' 去掉
  3. 找到
    #LoadModule proxy_module modules/mod_proxy.so
    #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    将这两行行首的 '#' 去掉
  4. 将DocumentRoot屏蔽掉
  5. 屏蔽<Directory "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs">这个标签中的所有内容。
  6. 打开apache目录下的\conf\extra\httpd-vhosts.conf 文件,修改如下:
    NameVirtualHost *:80
    <VirtualHost *:80>
            ServerAdmin xxx@gmail.com
    ServerName www.xxx.com
            DocumentRoot "D:/project/php_wp/xxx/public"
            ErrorLog "logs/xxx-error.log"
           CustomLog "logs/xxx-access.log" common  
          
         <Directory "D:/project/php_wp/xxx/public">
    DirectoryIndex index.php
    Options Indexes FollowSymLinks
       AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>

    <VirtualHost *:80>
            ServerAdmin yyy@gmail.com
    ServerName www.yyy.com
            DocumentRoot "D:/project/php_wp/yyy/public"
            ErrorLog "logs/yyy-error.log"
           CustomLog "logs/yyy-access.log" common  
           
         <Directory "D:/project/php_wp/yyy/public">
    DirectoryIndex index.php
    Options Indexes FollowSymLinks
       AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>
  7. 修改 C:\WINDOWS\system32\drivers\etc\hosts文件,在后面增加两行
    127.0.0.1 www.xxx.com
    127.0.0.1 www.yyy.com
  8. 重启apache,

打开浏览器,输入www.xxx.com和www.yyy.com,你是不是已经看到两个Zend Framework工程都在运行了。

今天下载了最新的xampp,配置了一个虚拟主机,一直在报错,Access forbidden! Error 403 

xampp <wbr>Apache <wbr>Access <wbr>forbidden! <wbr>Error <wbr>403 <wbr>解决方法

这很明显是服务器不允许访问文件,但是我的虚拟主机配置如下:
DocumentRoot "D:/work/test"
ServerName test
Options None  
Order allow,deny  
Allow from all  
竟然还是访问不成功,折腾了一会终于发现在httpd.conf里面有这个配置。
xampp <wbr>Apache <wbr>Access <wbr>forbidden! <wbr>Error <wbr>403 <wbr>解决方法

把这个改成如下配置,重启apache就行了。
xampp <wbr>Apache <wbr>Access <wbr>forbidden! <wbr>Error <wbr>403 <wbr>解决方法

我想这应该是xampp里面关于虚拟主机配置的一个bug,因为我在单个的虚拟主机里面已经有了Allow from all  这个配置,根据软件设计的思想,应该是局部的配置优先级要大于全局的设置,这个还有待改进。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多