Azure 云服务 PHP Pear 包

Posted

技术标签:

【中文标题】Azure 云服务 PHP Pear 包【英文标题】:Azure Cloud Service PHP Pear Packages 【发布时间】:2015-01-30 13:38:17 【问题描述】:

我正在按照本教程http://azure.microsoft.com/en-gb/documentation/articles/storage-php-how-to-use-blobs/ 使用 Azure PHP SDK 访问 Azure 存储 Blob。

我需要从运行我的 PHP 应用程序的实时云服务读取和写入这些 blob。它说 SDK 依赖于一些 PEAR 包,应该使用“Pear 包安装程序”安装它们

适用于 Azure 的 PHP 客户端库依赖于 HTTP_Request2、Mail_mime 和 Mail_mimeDecode PEAR 包。解决这些依赖关系的推荐方法是使用 PEAR 包管理器安装这些包。

这在我的 DEV 服务器上一切都很好,我只需安装 PEAR,然后安装软件包。但很明显,一旦应用程序被打包并推送到我的 Azure 生产云服务,它就不包含 Pear 或任何包。 PHP 在使用ServiceDefinition.csdef 启动任务启动时安装在云服务上。每个新实例在启动时都安装了 PHP。

那么如何在我的云实例上获取 PEAR 和这些包?我在 Google 上搜索并找不到任何解释使用 Pear on Cloud Instances 的内容,但所有 SDK 文档都说需要它?!?

我是不是误会了什么?

【问题讨论】:

【参考方案1】:

虽然 PEAR 包管理器在过去一直是中流砥柱,但我认为它正在迅速被 Composer 等取代。

但是,您不必使用 PEAR 工具进行安装。它只是一个早期的包管理器。您可以单独下载 PEAR 库并将它们放在一个公共目录中 http://pear.php.net/package/PEAR/download

这里需要注意的是,这是 100% 手动更新包,但 PEAR 更新很少而且相差甚远。下载每个包,然后设置基本包含目录。

set_include_path('/path/to/pear');

【讨论】:

这是完美的。在实例启动时安装 PHP 时,我能够自动编辑云实例 php.ini,并且我可以将库包含在推送到 Azure 的应用程序包中。解决了我的问题。谢谢。

以上是关于Azure 云服务 PHP Pear 包的主要内容,如果未能解决你的问题,请参考以下文章

微软云服务Azure所有产品简介

初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考

远程服务器上的 PEAR requireonce 错误

适用于来自 Azure 云服务的流量的 Azure NSG 规则

Azure 云服务(经典)的替代方案是啥? [关闭]

如何让 Azure 云服务教程正常工作