在任何地方复制Zenf框架都是一场噩梦,所以我有一个想法,如果整个框架只是一个zip文件,部署会更快。有没有办法做到这一点?这会非常低效吗?
答案 0 :(得分:2)
你真的必须每台服务器只部署一次,所以这不是一场噩梦。
但要回答你的问题:如果你的意思是你可以只包含一个ZIP文件,那么不。但是,为了减轻部署的痛苦,您可以将ZF作为zip文件上载到服务器,然后在远程计算机上将其解压缩。这比单独上传大量文件要快得多。
编辑:实际上,您可能可以实现自己的Zend_Loader版本,该版本知道如何处理zip文件。不过,我非常怀疑它会合理地运作。它很可能会导致比它解决的更多问题。
答案 1 :(得分:2)
从5.3开始(尽管它也可以作为PECL模块安装)PHAR文件 - http://pecl.php.net/phar& http://www.php.net/phar。然而,运行与整个ZF框架一样大的东西,其中大部分时间大部分时间都未使用,这将是过度的。我认为,当PHP5.3发布时,它的很大一部分也可能会以.PHAR文件的形式发布以供使用。
在此之前,没有。然而,复制它只是一次性交易。您也可以下载原始.tgz文件并将其解压缩到服务器上。
答案 2 :(得分:0)
我认为您仍然需要解压缩它,但不必将其复制到每个项目中。假设你有一个像这样的目录结构:
/htdocs
/library
/Zend
/Project1
[...]
/public
index.php
/Project2
[...]
/public
index.php
然后只需将index.php中的包含路径编辑为 ../ library 中的Zend_Framework:
../../library
答案 3 :(得分:0)
如果您正在使用基于Unix的环境,则在项目库文件夹下的Zend文件夹中添加符号链接也可以正常工作:
% cd /your/project/library
% ln -s /path/to/ZendFramework/library/Zend .
答案 4 :(得分:0)
你可以使用PHAR [1]扩展来管理这个:) PHAR扩展允许你使用类似的东西:
include 'phar:///path/to/zend-latest.tgz/file.php';
PS:PHAR也可以处理.zip或.tgz文件。
希望它有所帮助。欢呼声。