ZendChina | Zend中文权威资讯's Archiver

ZendChina 发表于 2007-12-20 14:48

存在多个PHP程序的主机上安装ZF的方法

如果你的机子上已经有很多PHP项目,像我这样,绝大部份是不是基于ZF的。我通常在WEB根目录下建立几十个目录,每个目录分别对应一个项目。原来我们访问项目可能是通过[url=http://localhost/project1][color=#0000ff]http://localhost/project1[/color][/url],[url=http://localhost/project2][color=#0000ff]http://localhost/project2[/color][/url]这样进行访问。通常来说项目间不会互相影响,因为我们的程序一般不严格要求文件的路径。只要相对路径对就行了。

       但是现在我们需要安装ZF,ZF要求index.php位于站点的根目录下。那么怎么使原来的程序仍然可以正常访问,而基于ZF的程序我们也可以访问?比如我建了个项目是happycms,那么我希望输入[url=http://happycms/][color=#0000ff]http://happycms[/color][/url]就可以访问我的基于ZF的happycms项目,而其它项目仍然通过[url=http://localhost/project1][color=#0000ff]http://localhost/project1[/color][/url]这样访问。

我的作法: 
1。编辑C:\WINDOWS\system32\drivers\etc目录下的hosts文件
在 127.0.0.1  localhost 下面加入:
127.0.0.1  happycms

2。编辑C:\Program Files\Apache
Group\Apache2\conf目录下的httpd.conf
加入 NameVirtualHost 127.0.0.1 在文件最末尾加上:

<VirtualHost 127.0.0.1>
        ServerName localhost
        DocumentRoot I:\Projects
        RewriteEngine Off
</VirtualHost>

<VirtualHost 127.0.0.1>
        ServerName happycms
        DocumentRoot I:\Projects\happycms\svn\trunk\src\www
        RewriteEngine On
        RewriteCond %{REQUEST_URI} !^.*(\.css|\.js|\.gif|\.png|\.jpg|\.jpeg)$
        RewriteRule ^(/.*)$ /index.php
</VirtualHost>

这样就完成了。这样无论是否基于ZF的项目都可以共存,不互相影响。

[color=#ff0000]文章转载自:[/color][url=http://www.phpeye.com/][color=#ff0000]PHPEye社区[/color][/url]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.