http://book.cakephp.org/2.0/zh/installation/advanced-installation.html
?
この URL の説明は非常にわかりやすいですが、以下の説明は win での Linux を例にしています。
CakePHP に少し注意してください。コア クラス ライブラリ。/lib/Cake ディレクトリにあります。
アプリケーション コード。/app ディレクトリにあります。
アプリケーションの Webroot。通常は /app/webroot ディレクトリにあります。
ROOT、APP_DIR、CAKE_CORE_INCLUDE_PATH の 3 つの定数を変更する必要があります。
ROOT は、アプリ フォルダーを含むディレクトリ パスに設定する必要があります。
APP_DIR は、アプリ ディレクトリのディレクトリ名に設定する必要があります (訳: 前のパスを除く)。
CAKE_CORE_INCLUDE_PATH は、CakePHP ライブラリ ディレクトリへのパスに設定する必要があります。
?
いいね?
define('ROOT', dirname ( dirname(dirname(__FILE__))));
}
?
は、ルートのパスがこのファイルの親フォルダーであることを意味します
?
実際には、私のindex.phpは
C:USBWebserverv8.5rootmyRootCakephp/index.php
が設定されています。つまり、親フォルダー
?
define('ROOT', dirname(dirname(__FILE__))));
}?同時に、私のアプリとケーキは C:USBWebserverv8.5rootcakephpappC:USBWebserverv8.5rootcakephplibに配置されます? が書きました
define('CAKE_CORE_INCLUDE_PATH', ROOT . DS .'cakephp'. DS . 'lib');
app と lib は同じパスの下にあります, セットアップ時に、一方には root が追加され、もう一方には root が追加されないのはなぜですか?
?
アプリに root を追加すると、
警告: include(C:USBWebserverv8.5rootC:USBWebserverv8.5rootcakephpappConfigcore. php) [function.include]: ストリームを開けませんでした:C:USBWebserverv8.5rootcakephplibCakeCoreConfigure.php?on line? の引数が無効です。 72?
の 2 c ドライブ文字
?
と if lib を削除する以外に方法はありません。 root が追加されていない場合、
?
警告: include(cakephplibCakebootstrap.php) [function.include]: 失敗しましたオープンストリーム: そのようなファイルまたはディレクトリはありませんか?C:USBWebserverv8.5rootmyRootCakephpindex.php?オンライン?97?
は Linux と同様にパスとして直接認識されます。 Win では当然認識できません?
したがって、調整した結果は上記のようになるだけです。 もちろん、これは root、lib、app を意味します。 、完全に分離でき、cakephp の指示に完全に準拠しています。 Linux ではもっと簡単かもしれません。?
?