fuelphpをロリポップサーバで動かしてみる

xreaの無料サーバが残念な感じだったので、ロリポップサーバの10日間体験でfuelphpを動かしてみました。


ロリポップは申し込み時の住所確認などが人力のようで、ちゃんと書いていなかったら警告メールがきてビックリ。決済がWebMoneyに対応していないのがいまいちな感じですが、DBが使えるロリポプランを選択してみました。


早速、FTP接続してfuelphpプロジェクトを丸ごとアップロード。
http://[アカウント名]/fuelphp/fuel/app/
みたいな感じで配置して動作確認。


500エラー。


こちらのサイトを参考に.htaccessの「Options +FollowSymLinks -Indexes」をコメントアウトしたら動いた。


と思ったらDB接続エラー。


こちらのサイトを参考にdb.phpのdsnに「unix_socket=/var/lib/mysql/mysql.sock」を追加するも動かず。いろいろ悩んだあげく、developer/db.phpを参照していたというオチでした。。db.phpのpdo接続設定は以下の通り。

return array(
'default' => array(
'type' => 'pdo',
'connection' => array(
'dsn' => 'mysql:host=mysqlXXX.phy.lolipop.jp;dbname=LAXXXXXXXX-develop;unix_socket=/var/lib/mysql/mysql.sock',
'username' => 'LAXXXXXXXX',
'password' => 'パスワード',
'persistent' => false,
'compress' => false,
),
'identifier' => '"',
'table_prefix' => '',
'charset' => 'utf8',
'enable_cache' => true,
'profiling' => false,
),
);

無事、DB接続もできて自前のコントローラも動作したので、URLを書き換える。
http://[アカウント名]/fuelphp/public/index.php から
http://[アカウント名]/index.php にしたいけど、DocumentRootはいじれないので、
http://[アカウント名]/ に.htaccessファイルを作成。

RewriteEngine on
RewriteBase /
RewriteRule ^assets(.*)$ fuelphp/public/assets/$1 [QSA,L]
RewriteRule ^(.*)$ fuelphp/public/index.php?/$1 [QSA,L]

さらにconfig.phpのbase_urlを変更。

'base_url' => '/',

これで、http://[アカウント名]/ にアクセスするとfuelphpが動くようになりました。
xreaみたいにcgiphpを使用しないでよかったので楽でしたが、DocumentRoot以上のディレクトリをいじれないのでちょっと手間取りました。