ZendFrameworkで作る『イマドキ』のWebアプリケーション
第1回 開発環境の準備(上)
2009年1月29日
PHP, フレームワーク, Zend Framework, Apache, PostgreSQL, Eclipe, Mercurial
アプリケーション, Windows, Linux, インストール, Apache, PostgreSQL
Zend Frameworkを利用したWebアプリケーションの構築の前に,開発環境を整えます。今回はZend Frameworkのインストールではなく,Zend Frameworkをインストールするための環境を整えます。
Linux/Windows/Mac OS Xでほぼ同じ環境で動作する構成を紹介します。Linux版(CentOS 5)のVMWareイメージは筆者のサイトで公開しています。これと同じ,環境の構築手順を紹介します。
本連載では基本的にLinux(CentOS 5)での環境を前提にZend FrameworkによるWebアプリ開発を紹介しますが,ここで解説する環境をWindowsやMacに構築すれば同じように開発できます。
Zend Frameworkの利用に必要な環境
Zend FrameworkはPHP5用のフレームワークです。当然,PHP5が必要です。Zend_Controllerを除けば,利用環境にほとんど制約はありません。Zend_ControllerはWebサーバのURL書き換え機能に依存しているため,URL書き換えが行えるWebサーバのみサポートしています。
Webアプリケーションを作る場合には,いわゆるMVCモデルで開発するため,Zend_Controllerが使えないと今時のWebアプリケーションは開発できません。現在(2009/1/5)のところ,Zend_ControllerはApache Web ServerとMicrosoft IISで動作します。つまり,Zend Frameworkを利用したWebアプリケーションはApacheまたはIIS上で動作するアプリケーションとして開発できます。
ZendFramwork開発環境の構築
利用するコンポーネント
- PHP:PHP 5.2
- フレームワーク:Zend Framework 1.7
- Webサーバ:Apache Web Server 2.2
- データベース:PostgreSQL 8.3
- IDE:Eclipe 3.4 PDT(PHP Development Tool)
- Eclipse:http://www.eclipse.org/
- Eclipse PDT:http://www.eclipse.org/pdt/
- バージョン管理:Mercurial 1.1
- Mercurial:http://www.selenic.com/mercurial/wiki/
- Mercurial Eclipse:http://www.vectrace.com/mercurialeclipse/
- ブラウザ:Firefox 3.0
- OS:Windows XP/Vista,Mac OS X 10.5,Linux(CentOS 5)
- ※注意:利用するコンポーネントは必要に応じてアップグレードする場合があります
このほかにも必要なコンポーネントがありますが,それら(※1)は順次紹介することにします。
- ※1
- GnuPG,FireBug,FirePHPなど
文字エンコーディング
記載がない限り,UTF-8文字エンコーディングを利用します。
ディレクトリ構成
- /www
- Web用のディレクトリ
- /www/default
- デフォルトのアプリケーションディレクトリ
アプリケーションごとに/www以下にディレクトリを作ることにします。Apache Web Serverを利用するので,仮想ホストも利用可能ですが,説明を簡略化するため/www/default/htdocsをドキュメントルートに設定して,アプリケーションの切り替えはシンボリックリンク(Linux/Mac)かコピー(Windows)で行うことにします。
利用するパッケージの紹介
PostgreSQL 8.3 One-Clickインストーラ
今回はPostgreSQL 8.3のバイナリ配布版である「PostgreSQL 8.3.5 One-Clickインストーラ」を利用して開発環境を構築することにしました。PostgreSQL 8.3のバイナリ配付版は米国のEnterpriseDB社によって開発され,配布されています。EnterpriseDB社はPostgreSQLグローバル開発チームのコアメンバーも所属している会社です。
このバイナリ版にはLinux/Windows/Macで同じルック&フィールでPostgreSQLとPHPを組み込んだApacheをインストールできるインストーラが付属しています。
このインストーラはスタックビルダと呼ばれるパッケージ管理機能もインストールします。PostgreSQLを利用したアプリケーションを簡単にインストールできるようになっています。Apache/PHPはOne-Clickインストーラのスタックビルダでインストールします。
- 注意
筆者はLinux以外に,複数のMac/Windows環境にもOne-Clickインストーラを利用してインストールしてみました。以前に別の方法でPostgreSQLをインストールしている場合,あらかじめPostgreSQL,Apacheをアンインストールすることをお薦めします。データベースのバックエンドを実行するアカウントであるpostgresも,インストールエラーを防ぐため,あらかじめ削除しておく必要があります。
Windwos/Macでは同じ名前でユーザを再作成しても,同じユーザとして認識されません。UNIX系OSの場合でもユーザID番号が異なると別ユーザになります。すでにPostgreSQLデータベースを利用されている場合,権限の調整などが必要になります。
PgAdmin III
PostgreSQLが初めての方でも,GUIでデータベースの作成からテーブルの作成,図表化されたクエリ実行プランの表示までできるPgAdmin IIIが付属しています。初めての方でも簡単に操作できます。
PgAdmin IIIの見た目や操作感は,Windows/Mac/Linux共通です。異なるプラットフォームでも同じGUIで操作できます。
ApacheとPHP
ApacheはLinux,Mac,Windowsなど多くのプラットフォームで動作するWebサーバです。現在,インターネット上でもっとも多く利用されているWebサーバがApache Webサーバになります。
Apache Web ServerとPHPはOne-Clickインストーラでインストールします。


