是否有Pear缓存代理服务器?

时间:2013-04-23 22:24:44

标签: php pear

我正在做一些devops工作,我经常不得不打开一台机器并从不同的位置安装一堆Pear包。

这些不同的地点go offline有点频繁(可能一周几次)。无论如何,我的理智太频繁了。

拥有某种缓存代理服务器是很方便的,我主持并运行自己,我会去每个Pear包。如果它没有包,它会熄灭并取出它。这将减少许多其他服务器的负载。如果上游永远失效,我还能得到一定程度的保证,我仍然可以访问包裹。

此类软件是否存在?梨?我甚至无法弄清楚Pyrus解决了什么问题,但它似乎并没有解决我的问题。

这种包代理/缓存类似于Nexus在Java / Maven-land中的功能。

2 个答案:

答案 0 :(得分:2)

Pyrus打算成为PHP5.3 +的PEAR安装程序。一些较新的PEAR2包需要它。但它不是缓存的解决方案。


我认为最简单的方法是从远程服务器下载软件包及其依赖项,然后安装软件包。以下是使用Benchmark包的示例:

wget 'http://your.cache.server/package/Benchmark-1.2.9.tgz'
tar xf Benchmark-1.2.9.tgz
cp package.xml Benchmark-1.2.9
sudo pear install package.xml

另一种方法是使用缓存HTTP代理服务器,因为PEAR使用HTTP进行下载。鱿鱼可能已经满足你的需求。


您也可以使用pirum。它是一个PEAR通道服务器软件,这意味着您可以设置自己的PEAR存储库。拥有它,您可以自己模拟远程通道服务器(经常出现故障):

  • 从远程频道下载所需的软件包并安装在您自己的
  • 将域指向/ etc / hosts中的127.0.0.1,为它们设置apache vhosts
  • 使用pyrus为每个域设置频道服务器并将包添加到它们

答案 1 :(得分:1)

Pyrus是PHP 5.3 +的重写PEAR安装程序。

https://github.com/c9s/MiniPear

有一个名为“MiniPEAR”的PEAR频道镜像工具

简单地下载一个软件包并没有给你所有的依赖,所以它不是一个真正的解决方案。

相关问题