fuelPHPをxreaサーバで動かしてみる

fuelPHPを理解したらどこかのサーバで動かしてみたくなったので、xreaサーバで動かせるか試してみました。


xreaサーバは標準でPHPが使えるのですが、持っているアカウントのPHPバージョンは5.2.5と、fuelPHPの動作条件である5.3以上でなかったので、PHPバージョンが5.4.7の無料アカウントを新しく取得しました。


SSH接続してからコマンド操作でfuelPHPをインストールしようとしましたが、新しいアカウントはSSH接続できても、1日目はコマンド制限があってlsコマンドすらできないため、ローカルで用意したfuelPHPプロジェクト(約1000ファイル)をまるっとFTPで「/public_html/x/」にアップロード。
※「/public_html/x/」だと外から丸見えなので、「/fuelphp/」とかにアップロードして、「/public_html/」に「/fuelphp/public/」へのショートカットリンクを貼るのがよさそうです。


早速、public直下を叩いてみるとfuelPHPの初期ページが表示されますが、自作したコントローラは動かず。。


調べてみると「public/.htaccess」を編集する必要があるとのこと。
phpcgiモードで動かす?らしいハンドラを追加。

AddHandler application/x-httpd-php5cgi php

これだけだとうまいことルーティングしてくれないので、

RewriteRule ^(.*)$ index.php/$1 [L]

RewriteRule ^(.*)$ index.php?$1 [L]

に変更してみると自作コントローラが動きました。
が、GETパラメタが取得できなかったので

RewriteRule ^(.*)$ index.php?$1 [QSA,L]

QSAを追加したらGETパラメタが取得できました。


これでfuelPHPを気軽に動かせて、人にも見せれちゃうサイトができました。


※2014.04.01追記:mysqlをインストールしたら無料アカウントの50MB制限をオーバーしてしまい使い物になりませんでした。VALUE-SERVERか、ロリポップを借りるかしないと実用に耐えられるサイトは作れなさそうな感じで残念。。