2014年11月18日火曜日

ruby使いが手を動かして学ぶphp その3

前回の続き。今回はcakephp2と格闘

環境

  • mac Yosemite
  • vagrant1.6.5(centos 6.5)

アプリのパスを設定

アプリを動かすにはapp/Config/bootstrap.phpを修正する必要がある。

編集しなくてはいけない三つの定数は、 ROOT 、 APP_DIR 、 CAKE_CORE_INCLUDE_PATH

  • ROOT には、アプリのフォルダが含まれているディレクトリのパスを設定
  • APP_DIR には、(訳注:相対的な)アプリのフォルダ名を設定
  • CAKE_CORE_INCLUDE_PATH には、CakePHPライブラリフォルダのパスを設定


if (!defined('ROOT')) {
    define('ROOT', DS . 'var' . DS . 'www' . DS . 'html' . DS . 'test');
}

/**
 * The actual directory name for the "app".
 *
 */
if (!defined('APP_DIR')) {
        define('APP_DIR', 'test');
}

define(
    'CAKE_CORE_INCLUDE_PATH',
    ROOT . '/Vendor/cakephp/cakephp/lib'
);

Console/cakeを動作させるための設定


PHP Warning:  include(Cake/Console/ShellDispatcher.php): failed to open stream: No such file or directory in /var/www/html/test/test/Console/cake.php on line 43

上記のエラーが発生。このままでは動かないので、以下の設定を変える。
まずはConsole/cake.phpを修正する必要がある。


        $root = dirname(dirname(dirname(__FILE__)));
        $appDir = basename(dirname(dirname(__FILE__)));


        //$composerInstall = $root . DS . $appDir . DS . 'Vendor' . DS . 'cakephp' . DS . 'cakephp' . DS . 'lib';
  $composerInstall = $root . DS . 'Vendor' . DS . 'cakephp' . DS . 'cakephp' . DS . 'lib';

$appDirがあるので、これは不要。削除してやると動作する。
でもこのままではまだエラー。

さらに続きます。

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...