ローカルからレンタルサーバへZendを移行
ローカルで ZendFrameworkをフロントコントローラ方式で利用しているが、
レンタルサーバでは、 ZendFrameworkの部品をコンポーネントとして利用しているのみ。
今回は、レンタルサーバ上でZendFrameworkのフロントコントローラ方式の仕組みを構築する。
公開フォルダ内にindex.phpのみで、実際のプログラムやZendFramework は公開フォルダの外に置くことにする。
ロリポップやチカッパは、ルートが公開フォルダになるので
今回は、CPI を利用。
/html/.htaccess ファイル
AddHandler x-httpd-php528 .php (PHP のヴァージョンが 5.2.8 のため)
suPHP_ConfigPath /usr/home/z*****(ユーザID)/html/ (「POST」で日本語を引き渡しできるように、/html 内に php.ini を作成。内容はWordpress のphp.ini をそのまま再利用も可)
Options +FollowSymLinks (これが無いと、権限が無いとサーバから拒否される)
iniファイルを読まれないために
<Files ~ “\.ini”>
deny from all
</Files>
php_valueやphp_flag は、500エラー(Internet Server Error)となるため、入れない。
そのため、セッションを利用して画面が戻ったときに、Form内に値が残っているようにしている
php_value session.cache_limiter none
は使えない。その代わりに、
/html/index.php 内で
session_cache_limiter(‘none’);
と設定する。
後は、通常通りの RewriteBase / Rewrite文
ZendFrameworkへのパスは
/html/index.php 内で
set_include_path(‘../library’);
で設定する。
データベースとしてsqlite を使用し、公開フォルダの外に、例えば application/lib 内に置く場合は
application/lib の属性を 707 または 777
application/lib 内のsqliteのファイルの属性を 606 または 666
に設定する。