2012-01-12 8 views
0

CakePHPのウェブサイトに問題があります。 ディレクトリをステージというフォルダに落としたので、ライブサイトと重複しています。だから、構造は次のようになります。CakePHP 1.2非定型ケーキパス投げエラーのあるアプリケーション

app 
    config 
    ... 
    webroot 
cake 
    config 
    ... 
    tests 
docs 
staging 
    app 
     config 
     ... 
     webroot 
    vendors 
vendors 

が、私は私のケーキフォルダがあるルートディレクトリに/staging/app/webroot/index.phpCAKE_CORE_INCLUDE_PATH定数を設定し、自分のデータベースを設定しました/staging/app/config/database.phpに設定します。 http://domain.com/staging/のサイトは、私は私のページの上部に次のエラーを取得しています動作しているようだが、

今、:

警告(2):にmysql_connect()[function.mysql-接続]:ソケット '/var/run/mysqld/mysqld.sock'(2)[CORE/cake/libs/model/datasources/dbo/dbo_mysql.php、行117]を介してローカルMySQLサーバに接続できません

警告(2):mysql_select_db():指定された引数は有効なMySQL-Linkリソースではありません[CORE/cake/libs/model/datasources/dbo/dbo_mysql.php、line 122]

警告(2):mysql_get_server_info():mysql_real_escape_stringの:供給された引数が有効なのMySQLリンクリソース[CORE /ケーキ/ LIBS /モデル/データソース/ DBO/dbo_mysql.php、ライン130]

警告(2)ではありません(2):mysql_query():指定された引数は有効ではありません。(2):mysql_query():引数が有効ではありません。 MySQL-Linkリソース[CORE/cake/libs/model/datasources/dbo/dbo_mysql.php、line 152]

警告(2):mysql_errno():指定された引数が有効なMySQL-Linkリソースではありません[CORE/cake/libs/model/datasources/dbo/dbo_mysql.php、line 329]

警告:(2):session_start()[function.session-start]:セッションキャッシュリミッタを送信できません - ヘッダーはすでに送信されています(出力は/users/ia/www.cantifix.co.uk/cake/basicsで開始されました)。警告:(2):ヘッダー情報を変更できません - 既に送信されたヘッダー(/users/ia/www.cantifix.coで出力が開始されました。 .ke/cake/basics.php:111)[CORE/cake/libs/session.php、行536]

何が起こっているのですか?私のデータベースの接続設定は上記のように正しいと思われ、サイトは正常に動作します(これらのエラーメッセージを除く)。

ケーキのライブラリーを使用して複数のアプリのヒントやヒントがある場合は、最も感謝します。

答えて

0

私は、同じディレクトリ内に数十の "app"フォルダを使用していました。 設定オーバーヘッドなしですべて正常に動作します

なぜあなたはCAKE_CORE_INCLUDE_PATHを変更していますか? そのまま残してください。 もダイナミックデフォルトとしてROOTを残す:

define('ROOT', dirname(dirname(dirname(__FILE__)))); 

ケーキはすべて自分自身の世話をします。

注: ウェブルートにVirtualHostを設定する必要があります。設定例: http://www.dereuromark.de/2011/05/29/working-with-domains-locally/

問題はありません。

+0

私は 'cake'ライブラリフォルダの場所が通常の場所になく、' ROOT'定数に触れていないので、 'CAKE_CORE_INCLUDE_PATH'を変更しています。また、それは一時的なステージング領域です。それ自身のサブドメイン/仮想ホストは必要ありません。 –

0

私もCakephpで多くのプロジェクトを持っていましたが、私はapp /をクローンして名前を変更するだけでした。私はcake_core_include_pathを変更する必要はありませんでした。私が必要としたのは、別の仮想ホストが新しいディレクトリのWebルートを指すように設定することでした。

多分あなたはロックファイルをコピーしましたか?

Warning (2): mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through 
socket '/var/run/mysqld/mysqld.sock' (2) [CORE/cake/libs/model/datasources/dbo/dbo_mysql.php, line 117] 

これはエラーの残りの部分をトリガーしているようです。残りのmysqlエラーはリソースを期待していましたが、偽のブール値を取りました。ヘッダエラーは、エラー出力の可能性が最も高いためです。

0

固定!それが私のdatabase.php設定ファイルの問題であったことが分かります。 $stagingアレイの値を$defaultアレイにコピーし、tmpフォルダをクリアして、バランスが宇宙で復元されました。

+0

ちょうど私が期待したように:)キャッシングは時々悪魔になることがあります。しかし、私はまだ定数を変更する必要はないと考えています。あなたのセットアップ/フォルダ構造は私にはかなり普通です。ちょうど私がそれをしたように。 – mark

+0

**ステージング**フォルダにコア**ケーキ**フォルダのコピーがないため、正常ではありませんでした。私は、親の** cake **フォルダを使うように定数を設定する必要がありました。 –

関連する問題