symfonyを使ってみる
symfonyの学習
PHPを勉強するにあたり、なにかしらのフレームワークを利用してみたいという気持ちが
強かったので、symfonyを勉強しようと思った。ということでまずは環境の構築をせねば
と、そのときの覚書を残しておく。
Webで調べながらだと個人的には体系的にサクサク進めないかなー、と思い、
以下の書籍を利用してみた。環境は、さくらのVPSの環境(CentOS 5.5)で。
symfonyの関連ソフトのインストール
symfonyのインストールにあたり必要なソフトをインストールする。
$ yum install --enablerepo="remi" php php-pear php-devel php-pdo php-xml php-mbstring php-process php-pecl-apc mysql-server subversion $ chkconfig httpd on $ chkconfig mysqld on $ /etc/init.d/mysqld restart $ /etc/init.d/httpd restart
ソフトの動作確認として以下の作業を実施した。
- PHPのバージョン確認
- mod_rewriteが有効になっているかの確認
- AllowOverrideが有効になっているかの確認
- APCが有効になっているかの確認
php.ini に以下の内容を追記。デフォルトタイムゾーンを設定しないため、
Warningが発生してしまっていたため。
date.timezone = Asia/Tokyo
symfonyインストール
- サンドボックスパッケージからsymfonyのインストールを行った。
インストール方法は、これ以外にリリースパッケージ、subversionリポジトリ、からの
インストールを行うことができる。
$ cd /var/www/html $ wget http://www.symfony-project.org/get/sf_sandbox_1_4.tgz $ tar zxvf sf_sandbox_1_4.tgz $ mv sf_sandbox_1_4 sf14 $ rm sf_sandbox_1_4.tgz
- インストール後の動作確認
$ cd /var/www/html/sf14 $ php symfony -V symfony version 1.4.11 (/var/www/html/sf14/lib/vendor/symfony/lib)
- .htaccesの編集
/var/www/html/sf14/webディレクトリにある.htaccessに以下のような修正を行う。
RewtireBase /sf14/web/
- sfディレクトリをコピー
雛形として作成されるサイトの画像などを適切に表示するためにシンボリックリンクを作成する。
$ ln -s /var/www/html/sf14/lib/vendor/symfony/data/web/sf /var/www/html/sf14/web
- symfonyのインストール後の動作確認
http://(DomainName)/sf14/web/frontend_dev.php
にアクセスすると「Symfony Project Created」が表示されれば
インストール成功。
localhostからではなく、リモートでアクセスする場合は、
frontend_dev.phpの記述でリモートアクセスを禁止している
記述があるため、その箇所をコメントアウトする必要がある。
//if (!in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1'))) //{ // die('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.'); //}
さあ、これで環境が整ったので、symfony使ったアプリ作りをやってみるか。