Home > PHP

symfonyのインストール

2011.10.08 21:24

インストールの下準備

 だいたいのことが、
http://www.symfony-project.org/gentle-introduction/1_4/ja/03-Running-Symfony
に書かれていますので、こっちを参考にした方が正確です。英後版の翻訳で詳細は端折っていますがわかりやすいです。ここではUbuntuでのインストール例を書いていますのでapt-get使えない環境の参考にはならないかもです。

バージョン確認

 端末にてPHPバージョンの確認をします。
# php -v
バージョンが 5.2.4 かそれ以降であるならば、インストールが可能です。それ以下の場合はバージョンアップした方がいいです。

最低限のPHP設定のチャック

http://sf-to.org/1.4/check.php
からプログラムチェッカーというphpファイルをダウンロードしてPHP環境をチェックします。
 このチェッカーは、端末からコマンドで実行する(cli)のとWEBブラウザーから実行する(cgi)のと二つのアクセス方法で実行します。というのは、端末とWEBとの二つの違った設定をphp.iniで設定可能なのです。いわゆるコマンドとしてのPHPと普通皆様が使っているWEBサイドのPHPとがあるわけです。詳細はphp コマンドラインぐらいでGoogleすると出てきます。
 check.phpは開発環境にしようとしているWEBサーバーのルートディレクトリ以下に設置してチェックしてください。

 私のサーバー環境ですが、
[[WARNING]] XSL module is installed: FAILED
            *** Install and enable the XSL module (recommended for Propel) ***
[[WARNING]] A PHP accelerator is installed: FAILED
            *** Install a PHP accelerator like APC (highly recommended) ***
[[WARNING]] php.ini has short_open_tag set to off: FAILED
            *** Set it to off in php.ini ***
[[WARNING]] php.ini has magic_quotes_gpc set to off: FAILED
            *** Set it to off in php.ini ***
をなんとかしろということなので、それぞれ再設定してあげます。

php.iniの設定

/etc/php5/apache2/php.ini
/etc/php5/cli/php.ini
の2ヶ所にあります。これらを両方のphp.iniの設定しないといけません。
 変更箇所は以下の2ヶ所です。
short_open_tag = On
 ↓
short_open_tag = Off
magic_quotes_gpc = On
 ↓
magic_quotes_gpc = Off
 short_open_tagとmagic_quotes_gpcというのは、short_open_tagをOffにすると<?  ?>という省略形の記号でくくれなくなります。<?php  ?>で必ず書かないとダメですよという命令です。magic_quotes_gpcは、POSTとかGETとかCOOKIEとかで'(シングルク オート)、"(ダブルク オート)、\(バックスラッシュ) 、NULLに対して、自動的に\(バックスラッシュ)でエスケープ処理をしてくれます。これをOffにしておくということです。

モジュール関係のインストール

 XSLというモジュールが足りないということで、インストールしてあげます。
# apt-get install php5-xsl
でOK!xmlをいろいろと変換してかなり便利なデータに書き換えてくれるモジュールみたいです。

 もう一つは、正式名がAPC a PHP acceleratorというものらしいです。PHPのメモリとかキャッシュの配分をうまいことやってくれるモジュールらしいです。
http://sabatino.name/install-apc-php-accelerator-ubuntu-server
に(英語ですが)詳しく書かれていたので、そのままの方法でやりました。 
#apt-get -y install apache2-threaded-dev
なんかインストールされた。完了。
#apt-get -y install php5-dev
どんどん入れる。これも正常にインストール完了。
#pecl install apc
途中なんかいろいろ聞かれるのだけど、とりあえず全部yesで。正常に完了。
 ここで拡張モジュールの設定を手動でやってあげます。/etc/php5/conf.d(といっても、これ、Apache2の設定ファイルのシンボリックリンクなんですが)にapc.iniファイルを作成してあげます。
#cd /etc/php5/conf.d
#touch apc.ini
 このapc.iniには最低限のコマンドを一行書いておきます。vimでもgeditでもいいんですが、適当なテキストエディタで、
extension=apc.so
を一行書いて保存しておきます。ついでに
#pecl upgrade apc
を実行して最新のものにしておきます。私の場合は最新のものだったので必要ありませんでした。
 最後に
#apt-get install php-apc
をインストールして終了です。面倒ですが、このやり方で面倒なくインストールできるはずです。

 ついでにphpunitで必要なxdebugなるモジュールもインストールしておきます。(特に必要ないかも...。)
#pecl install xdebug

下準備はこれで終了。
チェッカーの結果が、
********************************
*                              *
*  symfony requirements check  *
*                              *
********************************

php.ini used by PHP: /etc/php5/apache2/php.ini


** Mandatory requirements **

  OK        PHP version is at least 5.2.4 (5.2.10-2ubuntu6.10)

** Optional checks **

  OK        PDO is installed
  OK        PDO has some drivers installed: mysql
  OK        PHP-XML module is installed
  OK        XSL module is installed
  OK        The token_get_all() function is available
  OK        The mb_strlen() function is available
  OK        The iconv() function is available
  OK        The utf8_decode() is available
  OK        The posix_isatty() is available
  OK        A PHP accelerator is installed
  OK        php.ini has short_open_tag set to off
  OK        php.ini has magic_quotes_gpc set to off
  OK        php.ini has register_globals set to off
  OK        php.ini has session.auto_start set to off
  OK        PHP version is not 5.2.9
という風になっていれば大丈夫です。これを下地にsymfonyのインストールに進んでいきます。

symfonyのインストール

 なんともあっけない感じで、
# apt-get install php5-symfony
で終わりでした。私の環境では、自動的にsymfony version 1.0.20がインストールされました。
 巷ではpearからインストールするといいとか、アーカイブからダウンロードしてtarだとかいろいろ書いていますが、UbuntuはこれだけでOK。
# type symfony
/usr/bin/symfony
でもって、実行ファイルがどこにあるか確認。/usr/bin/symfonyにインストールしたものがあります。これで終わりです。

 2011年10月時点で最新のsymfoyは、最新版, 2.0(2011年7月28日)となっているので新しい方がいい人は2.0系にバージョンアップした方がいいかもです。私の環境ではapt-getで最新版がインストールできなかったので、
http://www.symfony-project.org/installation
へ行って1.4系を手動でダウンロードしてみました。GUIで操作している場合は、tarでもzipでもどっちでもいいです。適当な場所で解凍し、適当な場所に設置して./symfony/というようなディレクトリにまとめておきます。そこから手動でパスを通せば使えます。

インストールしてみてわかったこと

 インストールしてみると、symfonyフレームワークとは、phpクラスでもってWEB製作で頻繁に使われる設計や構造などをマシンのコマンドとしてインストールすることでより開発しやすくするというシステムです。次回に紹介しますが、WEBアプリケーションのその設計スケルトンをコマンド一発で作成できるので大変便利です。(しかし、プロジェクトの作成、アプリケーションの作成、モジュールの作成...と、いわゆる徹底した抽象概念の連続で使って体感して意味を見出さないとホントになんのことかさっぱりわからないといった感触ではあります。)

symfony_toppage.png







プロフィール



  • Name :: 山上オサム ♂(39)
  • Hobby :: 武術
  • Work :: Web Designer