ようこそゲストさん

CPA-LABテクニカル

2008/02/05(火) CakePHP追加コントローラー。ローカルはOK、でもレンタルサーバーでNG。の現象解明

はてブ情報 はてブに登録 はてブ数 cakephpspok
CakePHP1.2bで題名の通り、追加したモデル&コントローラーで不具合?が。ローカルの環境では全く問題なく動くのに、リモートのレンタルサーバーにアップロード後に試すと、なぜかこんなエラーが。
Error: The requested address '' was not found on this server.
ずいぶん悩んで時間がかかったけど、なんのことはない。
layout指定の最初の文字を大文字にしていました。。。。 (& デバッグモードdebug 0 の時)
  • var $layout= 'infl…';
とすべきところ
  • var $layout= 'Infl…';
としていました。。。


はい、私が悪いです。


確かにウィンドウズ(windows)環境では、大文字小文字を区別しませんでしたね。。。そんなの忘れてたし、まさかこんなことでつまずくなんて。。。。だから、CamelCaseとか複数形とか大嫌いだ。
ローカルはウィンドウズ、リモートはunix/linux系という人は多いかと思うので、覚書。


リモートは、Configure::write('debug', 0);にしているので、こうなったわけですな。
ここでデバックモードを1以上にすると以下のエラーがでて、間違いに気づきます。

Error: The layout file /home/hogehoge/hoge/cake/hoge/app/views/layouts/Inf….ctp can not be found or does not exist.

リモートで、あれっという現象にであったら、とりあえずデバッグモードを1にしてみると手がかりあるかも。


なお、アメリカのgoogleディスカッションをみると、似たような現象で、新たにアップしたモデルなどが動作しない場合は、キャッシュをクリアすると動いた事例もあるようです。お試しあれ。


cake1.2bのお話。

名前:  非公開コメント   

  • TB-URL  http://www.cpa-lab.com/tech/058/tb/