GAE+PHP/Rubyで拓く新世界

第6回 GAE上でWordPressを動かす

萩原 巧
リトルソフト株式会社

中越 智哉
株式会社ナレッジエックス

2010/6/3

今回は趣向を変えて、PHPで書かれていて広く普及しているブログ作成アプリケーション「WordPress」をGAE上で動かしてみます(編集部)

GAEで実際に使われているPHPアプリを検証する

 連載6回目にあたる今回は、今までとは少し趣向を変えて、実際に広く使われているPHPのオープンソースソフトウェアがGAE上で動作するかについての検証を行い、動作の実現性や問題点について言及するとともに、画面表示やデータベースアクセスを含めた動作について検証を行っていく過程を通して、PHPのアプリケーションをGAE上で動作させるために必要となるテクニックなどを紹介していきます。

GAEにインストールするアプリケーションについて

 GAE上にて動作検証を行うアプリケーションとして、星の数ほど(大げさですが...)存在するPHPのオープンソースソフトウェアの中から、今回はWordPressというアプリケーションを選択しました。

WordPressとは?

 WordPress (ワードプレス) とは、オープンソースのブログ/CMS プラットフォームであり、導入の容易さや安定性、日本語ドキュメントやサポートが充実しているなど、評価の高いアプリケーションです。プラグインを導入/作成することよって、ユーザーが必要とする機能を自由に選択することできるという優れた拡張性を持っています。

 WordPressについて詳しくは「WordPress日本語ローカルサイト」をご覧ください。

 今回はWordPressをGAE(PHP4G)で動作させてみます。なお、執筆時(2010年3月)現在 最新バージョンは2.9になりますが、今回は1つ前のバージョンである2.8がGAE上で動作するか検証をしました。

なぜWordPressをGAEで検証しようとしたか?

 今回WordPressをGAE上で動作検証した理由として、ブログ/CMSプラットフォームソフトウェアとしては著名かつ人気であるアプリケーションをGAE上で動作させることにより、より多くの方々にGAEの可能性を知ってほしいと思っていたためです。

 また、以下の点についてWordPressがGAEとの親和性に優れていると判断したためです。

・PHP+MySQLで作成されている

 これは当たり前なことではありますが、PHPで動作することがPHP4G動作における最低限の条件であり、RDBとしてMySQLが使用されていることにより、MySQLをSQL4Gに代替することが可能なためです。

・画面出力時に出力用のテンポラリファイルを作成しないアーキテクチャを採用している

 GAEではその環境内にファイルを動的に作成することができないので、アプリケーション実行中にテンポラリファイルを作成しないWordPressはGAEの特性にマッチしています。

・アーキテクチャが簡潔で分かりやすく、プラグインによって機能拡張が容易である

 GAE上で動作させるためには、DB周りなどをSQL4G向けに修正する必要があると考えていたので、アーキテクチャが比較的簡潔であることも重要な条件でした。WordPressは、綺麗な設計と分かりやすいつくりで筆者は比較的好感を持てました。

著名なアプリケーションをGAE上で動作させるということは……

 フリーのCMSアプリケーションであるWordPressがGAE上で動作すれば、今までレンタルサーバを使用して構築していた環境を使用せず、GAEという完全にオープンでフリーな環境で運用することができます。これは、いままで課金がほぼ当たり前だったサーバ周りの環境が、基本的に無料で使用できるようになるという強烈なインパクトがあると思います。

 近頃、いささかバズワードと揶揄されつつある“クラウド”ですが、技術者から見たクラウドとは、メーカー主導でサーバハウジングのほとんど名を変えただけのそれではなく、GAEという優れたバックグラウンドテクノロジーから私たちが自由な発想でアプリケーションを構築/運用する環境や技術の集大成であると筆者は考えています。

1/3
next
Index
GAE上でWordPressを動かす
  Page1
GAEにインストールするアプリケーションについて
WordPressとは?
なぜWordPressをGAEで検証しようとしたか?
著名なアプリケーションをGAE上で動作させるということは……
  Page2
GAE環境で動作されるために想定される問題について
WordPressを動かしてみよう!
データベースの互換性問題とその解決
文字化けの問題とその回避策
GAEの30秒ルールの問題
ファイル書き込みの問題
  Page3
GAEでのWordPressの動作確認
インストールの画面と初期設定
インストール
PHP4GとGAEの今後について

 Coding Edgeお勧め記事
いまさらアルゴリズムを学ぶ意味
コーディングに役立つ! アルゴリズムの基本(1)
 コンピュータに「3の倍数と3の付く数字」を判断させるにはどうしたらいいか。発想力を鍛えよう
Zope 3の魅力に迫る
Zope 3とは何ぞや?(1)
 Pythonで書かれたWebアプリケーションフレームワーク「Zope 3」。ほかのソフトウェアとは一体何が違っているのか?
貧弱環境プログラミングのススメ
柴田 淳のコーディング天国
 高性能なIT機器に囲まれた環境でコンピュータの動作原理に触れることは可能だろうか。貧弱なPC上にビットマップの直線をどうやって引く?
Haskellプログラミングの楽しみ方
のんびりHaskell(1)
 関数型言語に分類されるHaskell。C言語などの手続き型言語とまったく異なるプログラミングの世界に踏み出してみよう
ちょっと変わったLisp入門
Gaucheでメタプログラミング(1)
 Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう
  Coding Edgeフォーラムフィード  2.01.00.91


Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

>

Coding Edge 記事ランキング

本日 月間