XAMPP+symfony環境構築
XAMPP for Linuxとsymfony(PHPフレームワーク)をインストールした時のメモ。
さすがに前回のメモはひどかったのと、インストールし直す状況になってしまったのでちゃんと書き直します。
前提として、OSはXubuntu12.10を使用してます。
- XAMPP for Linuxをダウンロード。http://www.apachefriends.org/jp/xampp-linux.html
- /optに展開
sudo tar xvfz xampp-linux-1.8.1.tar.gz -C /opt
- /opt/lampp/lampp のシンボリックリンクを /usr/bin/lamppに作る。lamppを起動するときに、/opt/lampp/lamppとタイプする必要がなくなる。
sudo cp -s /opt/lampp/lampp /usr/bin/lampp
- とりあえず起動してみる。
$sudo lampp start Starting XAMPP for Linux 1.8.1... XAMPP: Another web server daemon is already running. XAMPP: Starting MySQL... XAMPP: Starting ProFTPD... XAMPP for Linux started.
二行目がなんかおかしい。
XAMPP: Another web server daemon is already running.
localhostにアクセスしてみるととりあえずサーバーは動いてるっぽいけど、localhost/xamppにアクセスしたらNot foundと怒られるのでどうもおかしい。
ぐぐってみると、同様のエラーを出している人がいて、
sudo apt-get autoremove apache2
をした後に、sudo lampp restart で無事に動いた。
さて次はsymfonyの導入ですね。個人的な都合でバージョンは1.0.22です。
xamppに入ってるpearを使ってインストールします。
/opt/lampp/binにて、
sudo ./pear channel-discover pear.symfony-project.com ./pear install symfony/symfony-1.0.22
で完了。
symfonyのシンボリックリンクをlamppと同様に作成。
sudo cp -s /opt/lampp/bin/symfony /usr/bin/symfony
これでまあなんとかなる?→ならない。
symfony で適当にプロジェクトを作って、webディレクトリのシンボリックリンクを/opt/lampp/htdocs/testに作成。
localhost/testにアクセスするとエラー。
/opt/lampp/lib/php/data/symfony/config/php.ymlを以下の通り書き換え。
set: # magic_quotes_runtime: off log_errors: on arg_separator.output: | & warn: # magic_quotes_gpc: off # register_globals: off session.auto_start: off
まだNoticeが残る。
/opt/lampp/lib/php/symfony/symfony.php 132行目を変更
ob_start(sfConfig::get('sf_compressed') ? 'ob_gzhandler' : '' ); ↓ ob_start(sfConfig::get('sf_compressed') ? 'ob_gzhandler' : null );
まだなんか出てくるので、sfFileCache.class.php 484行目、491行目をコメントアウト
//set_magic_quotes_runtime(0); ... //set_magic_quotes_runtime($mqr);
プロジェクトのwebディレクトリ下に、opt/lampp/lib/php/data/symfony/data/web/sfのシンボリックリンクまたはコピーを作る。これで完成。