2013-08-31 106 views
1

我在FC文件夾下有一個cakephp項目,在Ubuntu上,它的路徑是/var/www/FC/app/... 上傳到ec2並進行所有配置更改時,基本路徑即。 index.php文件被正確打開,但是,index.php的任何其他鏈接給了一個錯誤:在生產服務器上找不到cakephp控制器錯誤

Error: FCController could not be found.

Error: Create the class FCController below in file: app/Controller/FCController.php

class FCController extends AppController { 

} 

在創建這個文件,它要求把方法的位置到類FCcontroller,並把空方法在類中顯示藍色像一個空白頁面。 由於我沒有寫這段代碼,我不知道應該在哪裏寫入數據......我該怎麼辦?

+0

可以請你用你寫的方法更新控制器代碼....和藍屏查看視圖文件夾,你會看到layout.ctp文件.. .that是主要模板文件的文件。 –

+0

FC控制器中沒有任何方法,實際上我的代碼中沒有FC控制器。我只是做了一個空方法,因爲錯誤顯示我要檢查會發生什麼......我認爲控制器的默認路徑設置不正確,如何更改控制器的路徑,它在配置中的位置? – Anugrah

+0

你可以在配置文件夾中看到它......並在該文件夾內你會看到'route.php'文件... –

回答

1

我排序的問題了,這是因爲在我的代碼,以前的用戶做了一個控制器文件Locationscontroller .php然後指定的URL是這樣的:

<form id ="0" action="/FC/locations/confirm_final"> 

這對本地主機在我的本地機器的基本文件夾是htdocs中,我不得不鍵入localhost/FC /訪問的index.php 所以很自然因爲在EC2上我。已經讓FC本身成爲我的基礎文件夾,它試圖訪問其中不存在的另一個FC,/ XXX/locations /意味着它搜索「XXX」控制器,然後搜索其中的位置。由於我的控制器是位置,它一直給出一個錯誤。

只要我把它改成這樣:

<form id ="0" action="/locations/confirm_final"> 

它指向正確的控制器,這是位置。 這都是因爲我沒有檢查哪個控制器被哪個視圖調用! 我是一個白癡,這將是所有:D

1

你需要改變你的app\webroot\index.php這三行:

// The full path to the directory which holds "app", WITHOUT a trailing DS. 
define('ROOT', '/var/www/FC'); 

// The actual directory name for the "app". 
define('APP_DIR', 'app'); 

// The absolute path to the "cake" directory, WITHOUT a trailing DS. 
define('CAKE_CORE_INCLUDE_PATH', ROOT . DS . 'lib'); 

指向它們各自的位置。

(最後的三個默認情況下注釋,所以你必須解除它。

+0

嗨戴夫, 感謝您的答覆!所以,如果我的蛋糕文件夾的路徑是這樣的: /var/www/FC/app/webroot 我在前兩行寫什麼? 我試圖給路徑,但它沒有工作,你能否給我特定的命令acc我上面給出的路徑?非常感謝! – Anugrah

+0

編輯答案與我認爲將您的路徑.E – Dave

+0

嗨!我做了改動,但錯誤仍然存​​在:(可能是3 htaccess文件的問題? 我沒有給過重寫基礎命令等,我的cakephp位於www文件夾中,所以我需要重寫基礎爲FC? PS-base FC文件夾中還有另外一個index.php,我是否需要在那裏更改cake_core配置?它現在顯示舊的默認值.. PS2-可能是關於allowoverride的一切嗎?默認文件有4個允許覆蓋,前2個設置爲全部,最後2個仍然設置爲none ... – Anugrah

相關問題