投稿日:

appfog に PHP + MySQL 環境を作る

appfog-logo

appfog」は、とても手軽で簡単な PaaS 環境で、私は最近実験的なプロジェクトや、WordPress の開発環境として利用させて頂いています。今回は、appfog に、プレーンな PHP + MySQL 環境を構築してみましたので、手順を簡単にご紹介いたします。「appfog 簡単そう!」って思ってもらえると幸いです。

セットアップ

アプリケーションの作成(Webサーバー)

まず、ダッシュボードから、Create App に入り、PHP 環境を選択します。

 

次に、インフラを選択します。個人的には AWS US  East か HP がお気に入りです(理由は URL が短いからですw)。サブドメインも入力して、[Create App] します。

これだけ httpd 環境が出来るのですから、素晴らしいですね!
処理完了後、上の図の例では、http://c5.aws.af.cm にアクセスすると、既にHello World が表示されます。

サービスの作成(MySQL)

次に MySQL をセットアップします。

アプリの管理画面の Services のセクションを開きます。
画面下の方、Provision Service のセクションから、MySQL を選び、DB 名を入力してから、[Create] します。

これだけで、アプリケーションから利用できる MySQL のセットアップが完了です。

DBへの接続情報を取得するには

さて、PHP から MySQL へ接続情報はどのように入手できるでしょうか?

appfog の場合、DB 接続の為のホストや、ユーザー名、パスワードといった情報は、VCAP_SERVICES という環境変数より JSON で取得できます。appfog のドキュメントだと、次ページに関連の記述があります。

http://docs.appfog.com/services/overview

この環境変数を取得し、JSON をパースして DB アクセス情報を取得する PHP スクリプトは以下のようになります。

 

以上、ということで、簡単ですねー! DB接続情報の取得は少々面倒に思われるかも知れませんが、全体を通してとてもシンプルで扱い易い PaaS 環境です。無料の基本利用枠があり、トラフィックさえ少ない感じなら5サイトぐらいは運用できそうです。環境を作ったり削除したりも Web の管理画面から簡単に出来たり、これまで使った PaaS の中では一番気に入っています。

ちなみに、好きなものを好きと言ってるだけです。ステマじゃありませんのであしからず♪

 

投稿日:

PHPFog/AppFog と WordPress とファイル管理


以前の記事「PHPFog と WordPress とファイル管理」からのアップデートです。

WordPress は管理画面からサイト自体に様々なカスタマイズが行えることが特徴であり強みです。管理画面からテーマやプラグインをインストールすると、基本的に wp-contents 内に必要なファイルがダウンロードされて追加されます。PHPFog や AppFog などの環境上に WordPress をデプロイしてもこれは同様なのですが、実はちょっと困ったことがあります。

問題

PHPFog では、初期にデプロイされた後、WordPress の管理画面で行った変更については、git clone でも pull でも取得できません。AppFog もツールや方法は異なるものの同様です。つまり、最後に push(update)した変更しか取得することが出来ないわけで、そうなると当然ながら、テーマやプラグイン、また画像などのメディアファイルなど、WordPress の管理画面から追加されたファイルを手元に取得することが困難です。また取得が困難なだけでなく、手元のファイルをアップデートしてサーバーに push (update)しようものなら、それらのサーバーにしか無いデータが消えてしますことがあります。

解決策

プラグイン「BackWPup」を利用します。
http://wordpress.org/extend/plugins/backwpup/

BackWPup は、WordPress のデータベースの中身やファイル等の全てをバックアップできる強力なバックアップツールです。バックアップするファイルは、別の FTP サーバーはもちろん、DropBox、Amazon S3、Google Strage、MS Azure といった様々な媒体に転送できます。バックアップのセットアップもとても簡単です。

このプラグインを用いて、例えば、バックアップ先に DropBoxを指定してバックアップを実行させます。BackWPup の処理が完了し、しばらくしたら DropBox の中の指定したディレクトリにちゃんとバックアップファイルが転送されています。これを解凍して、手元の WordPress の wp-contents を更新し、改めて PHPFog や AppFog に push/update します。

以前の記事「PHPFog と WordPress とファイル管理」では、navphp というファイルエクスプローラ利用しましたが、それよりもずっと簡単に、しかも副次的に(?)サイトのバックアップまで取得できるので大変スマートな方法だと思います。

BackWPup のインストール

管理画面の「プラグイン」>「新規追加」から通常通りインストール、有効化してください。
「BackWPup」で検索できます。

ローカルの WordPress データを最新にするまでの流れ

  1. [BackWPup] > [Add New] から、新規 Job を追加する
    • 設定項目は大変多いですが、とりあえずほとんどデフォルトのままでOK
    • バックアップファイルの転送先のみ注意して入力する
  2. [BackWPup] > [Jobs] で Job 一覧を開いて、作成した Job を [Run Now] で実行する
  3. 指定したファイル転送先にファイルが転送されるので、ファイルを取得する
  4. ローカルの WordPress ファイルをアップデートして、サーバーに push/update する

 

 

以上です。