有問題! 我正在使用Zend Quickstart應用程序作爲(剛開始lol)開發的地下室。 我的本地機器上有PHP/MySQL服務器(WinXP) 因此,一切工作正常。 但後來我試圖上傳我的網站到遠程服務器。這是我所得到的:Zend Autoloader在實際網站上無法正常工作
Fatal error: Class 'Default_Model_Post' not found in /home/mysite/application/controllers/IndexController.php on line 13
13號線:
$post = new Default_Model_Post();
Default_Model_Post類位於應用程序/模型/ post.php中 和我的家庭服務器上被Zend的應用程序找到了!
我已經檢查的.htaccess - 有SETENV APPLICATION_ENV生產線 這裏是我的application.ini:
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
autoloaderNamespaces[] = "Mysite_"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0
resources.layout.layoutPath = APPLICATION_PATH "/layouts"
resources.db.adapter = "pdo_mysql"
resources.db.params.host = "localhost"
resources.db.params.username = "mysite_ib"
resources.db.params.password = "my passwd here"
resources.db.params.dbname = "mysite_ib"
resources.db.isDefaultTableAdapter = true
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1
這裏是bootstrap.php中:
<?php
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Default',
'basePath' => dirname(__FILE__),
));
//print_r(Zend_Loader_Autoloader::getAutoloaders()); exit; //tried to get some info here lol
return $autoloader;
}
}
檢查過的一切,我能想象!它適用於我的開發機器,但在真正的服務器上 - 它不是! 已經遍尋谷歌,Zend docs和stackoverflow,但總是不完全是我的問題(或修復不起作用)。 即使在真實的服務器上,Mysite_名稱空間中的類也能正常工作。 在服務器上的網站是我的開發網站的全部副本(壓縮 - >上傳 - >解壓Zend庫等) 請說如何解決這個問題或至少如何調試它...我敢肯定,有一些神詛咒的服務器選項,我忘了改變。 我真的很依賴你的幫助:(我的夢的項目是廢墟,對不起英語對不起
謝謝!問題真的是區分大小寫!你的答案都是有用的! – Dmitry 2011-03-03 08:24:11