cakePHPの設定してみた | フレディのWEBエンジニアブログ

フレディのWEBエンジニアブログ

ヘイヘイヘーイ オゲンキデスカー!
フレディです。
みようみまねでプログラム書いてます。
自分メモ用エンジニアブログというやつ始めました。
間違ってたら教えてね(^^;)

フレディです。
コネタをまとめるために、エンジニアブログ作ってみました。

今、自営サイトのリニューアルをやっています。
現サイトはなんと、15年くらい前に作った、perlとテキストベースのCMS。
サーバはずっとサイトサーブなので、今回、サイトサーブ2に移行予定です。
新規顧客獲得のため、ショッピングフィード機能に期待。

今回せっかくなので、cakePHP+DB 環境に移行しようかな~なんて、
甘く考えてたら、cakePHPの設定に丸3日かかりました・・・orz

以下、悩んだ末の覚え書き。

■サイトサーブ2は一応、cakePHPに対応しています。とのこと。
 http://faq.estore.co.jp/siteserve2/faq.php?f=740&c=217
 ※その根拠は、mod_rewriteモジュールがあり、.htaccess のAllowOverride Allもおk。
  あ、今回入れたのは1.3です。2以降はまだ翻訳が終わってないらしいのでスルー。
  あまりに悩んだのでアマゾンで本まで買ってしまった。2冊で5000円もしたじゃないか。

■サイトサーブ2は、phpファイルを全て 755 にしなければならない。(755以外ダメ)
 何この仕様・・。perl時代よく見た「Internal Server Error」が出たらほぼこれ。
 ※/app/tmp以下は777にすること。

■.htaccessには全部、RewriteBase を入れないとダメ。これ悩みました。
 ↓このページの一番下のパターン。英語がきちんと読めてたらこんなに悩まなかったかもだ。
 http://book.cakephp.org/1.3/view/917/Apache-and-mod_rewrite-and-htaccess

 以下、各階層の .htaccess ファイルをコピペしときます。
 インストールディレクトリは、/cake/ にしました。
 お店がリアルケーキ屋なんでURLちょうどよかったんでww

●/cake/以下の.htaccess

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /cake
RewriteRule ^$ app/webroot [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>

●/cake/app/以下の.htaccess

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /cake/app
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>

●/cake/app/webroot/以下の.htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /cake/app/webroot
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>


■あと、DBのホスト名とかサイトサーブのFAQ見ても全く情報ないので、
 phpMyAdminの中見て確認すべし。db.ドメイン名 になるみたい。
 /app/config/database.php.default を書き換えて、/app/config/database.php に変更。


これで動いた。やれやれ。
体操の内村君の表彰式見て寝る。
脇毛がちょっと気になるわよね。。