Linux/BSD 界隈では LL が共通環境になってくれて非常にうれしいですね。せっかくなので、FreeBSD dumpでとったバックアップファイルを Azure BLOB 上に置こうかと Azure SDK for PHP を使ってみました。
http://www.windowsazure.com/en-us/develop/php/common-tasks/download-php-sdk/
http://www.windowsazure.com/en-us/develop/php/how-to-guides/blob-service/
だいたいそのまま動くのですがいくつか注意点
- PEAR 経由でインストールする。(Composer 経由でのインストールには失敗 UTF-32LE がなんとかいうエラー。)
- require_once ‘WindowsAzure/WindowsAzure.php’ を先頭に記述する。(これは PEAR 経由インストールであり Composer を利用しなかったことによる影響。サンプルコードの vendor/autoload.php は Composer 用の記述方法)
- PHP拡張のうち ctype, openssl をインストールする。
というわけで、コンテナ作成のサンプルコードは以下のよう修正することで使うことができた。
#!/usr/local/bin/php
<?php
// require_once ‘vendor/autoload.php’;
require_once ‘WindowsAzure/WindowsAzure.php’;
use WindowsAzure\Common\ServicesBuilder;
use WindowsAzure\Blob\Models\CreateContainerOptions;
use WindowsAzure\Blob\Models\PublicAccessType;
use WindowsAzure\Common\ServiceException;$connectionString = "DefaultEndpointsProtocol=https;AccountName=[アカウント名];AccountKey=[アカウントキー]";
// Create blob REST proxy.
$blobRestProxy = ServicesBuilder::getInstance()->createBlobService($connectionString);(中略)
?>