まずは、ちょっとお高い方のレンタルサーバである
XREA.COMでEthnaを動かしている「メモ/2007-04-17/Ethnaをつかう」や「レンタルサーバでPEARを使う方法」あたりが参考になりますが、非常に制限の多い
まずは、XREA.COMで実現した方の方法を参考に、さっき作ったプロジェクトフォルダ内のlibにXAMPPのPEAR、Ethna、Smartyを全部コピーします。testproj/lib というこのフォルダ、なぜか空っぽなんですね。
/Applications/xampp/xamppfiles/lib/php/pear → testproj/lib/pearそして、iCLUSTAのルートディレクトリにプロジェクトフォルダをまるごとアップします。ドキュメントルートとなる www.some.site/ と testproj/ が並ぶことになります。
/Applications/xampp/xamppfiles/lib/php/Smarty → testproj/lib/Smarty
次に、testproj/wwwへのシンボリックリンクを作りたいところですが、iCLUSTAでは無理なようです。実ファイルをコピーするしかありません。ドキュメントルート内のフォルダにtestproj/wwwからindex.phpとcss/、js/をコピーし、index.phpのrequire_once '/home/vuser/some path/testproj/app/Testproj_Controller.php'; をアップしたディレクトリに合わせて書き換えます。
さて最後にPEARなどのinclude_pathを指定しなければなりません。これまではphpファイルすべてに
ini_set('include_path', '/home/vuser/some path/lib' . PATH_SEPARATOR . ini_get('include_path'));などと記述してきましたが、Ethnaがどうなっているのか調べたくもないし、今後のバージョンアップなども考えるとこの方法は取れません。そこでまず、.htaccessにphp_valueで指定してみました。
<IfModule mod_php4.c>しかし、全くダメです。無視されているようです。
php_value include_path ".:/home/vuser/some path/testproj/lib:/home/vuser/some path/testproj/lib/pear"
</IfModule>
しかし、なぜか一点だけ自由になるところがありました。php.iniをまるごと設置できるとのことなのです。使いたいディレクトリにphp.iniを置けば、それを優先する、ということです。.htsccessがダメなのに、なんだかバランスが良くない気がするのは気のせいかな?
まあ、とにかく、index.phpなどを置いたディレクトリにphp.iniを設置し、include_pathを指定してやっとテストです。
結果、チュートリアルに従って作ったページが無事表示されてめでたし、となりました。これで、どんなレンタルサーバでも大体はEthnaが使えそうなことがわかりました。
さあ、使いこなせるようにならねば!



