2008年10月9日木曜日

早いとこなんとかせなな

昨日から調べていたECサイトのエンジンを引き続き調べる。
BakeSaleというCakePHPをフレームワークとしたもの。

XAMPとCakePHPという組み合わせでデモの動作を確認するところまで持っていくのが目標。
XAMPの起動に手間取ってしまう。
バッチファイルを起動しては、設定ファイルのパスを書き換えるが、それがいらんからXAMPやろ、と思い立ってインストールルートを調べるとセットアップ用のバッチが見つかる、今まで書き換えた分無駄でした。
つまり、Apache上でPHPとMySQLがすぐに利用できる状態でパッケージされて提供されているのがXAMPなので、設定ファイルをいじるのはXAMPが提供している機能外の機能を利用するときだけだということを判っていながら、動かんからといきなりそこに手を出してしまった私の軽率は取り返しがつかないわけです。
マニュアルを読めという亡くなった祖父の言葉が頭をよぎりました。

XAMPが動いたところで、BakeSaleを配備しようとBakeSaleのサイトを訪れようとするが、音沙汰なし。
BakeSaleは先月公開されたばかりのようで、アクセス集中してるのかもしれない。
とにかく、これではインストールが進まないのでCakePHPのサイトでアプリケーションの配備方法を探すことにした。ここでも、マニュアルを探すという作業を省いてしまったことに後で気づくことになって後悔する。

CakePHPのマニュアルにしたがって、BakeSaleに準備されていたSQLを実行しようとしたところで、phpAdminが動かない。
MySQLを起動し忘れていただけだったのだが、ここでエラーメッセージが文字化けし、しばし別方向へ飛ばされる。一旦間をとって、MySQLを起動するとすんなり動く。文字化けもなし。

エラーメッセージの文字化けは無視することにして、懸案のSQLを実行して、いざBakeSaleを起動。
phpのエラーログが表示される。
テーブルがないらしい。見つかったSQLは全部実行したつもりだった。
もう一度さがしてみると、ありました。ありました。
ついでにマニュアルも見つかりました。。。

マニュアルどおりに実行してみましたが、それでも動かない。
動くには動いたんだけど画面の様子がどうもおかしい。

ひとまず、CakeとBakeSaleに問題を分割すべく、あたらしくCakePHPのアプリケーションをつくってみることにする。
チュートリアルを見ながらつくっていくと、最後にmod_rewriteの設定の話が出てくる。
ルーティングが上手く言ってないということは判っていたので、というのもリンク切れが続出、エラーログを見ても、まったくおかしなURLにリクエストが着ていたので、これはそうとしか考えられないということに。

httpd.confを見てみるとリライトモジュールのロードがコメントアウトしてあった。
XAMPのデフォルトはそうなのか、それともApacheのデフォルトがそうなのか。
つくってる人の顔が見えんというのはそこがわからんね。
そこが判ったらもう少し面白いのかもしれないね。

設定を直して起動したら、トップ画面は正常に表示された。

ここまできて、当初の目的だった、プログラマーではない人が利用するにはちょっと手がかかると判断して調査は中止。勉強になりました。
ECCubeにしとけばよかったか。。。

0 件のコメント: