Автозагрузка Zend Framework не работает при развертывании

Мой веб-сайт на Zend отлично работает на моем локальном хосте (используя Mac). Но когда я развертываю его в веб-хостинге Linux, я получаю следующие ошибки:

На странице указателя, которая пытается перечислить мои объявления, вызывая ресурс, где выбор:

Неустранимая ошибка: класс 'Lintottar_Model_Resources_Ad' не найден в /www/webvol8/4v/7e33wem4920cqpg/lintottar.se/library/My/Model/Abstract.php в строке 79

На другой странице помощник вида, кажется, работает - основной макет отображается, но я получаю следующую ошибку: Неустранимая ошибка: класс 'Lintottar_Form_Search_Simple' не найден в /www/webvol8/4v/7e33wem4920cqpg/lintottar.se/application/modules/lintottar/views/helpers/SearchForm.php в строке 16

Вот мое приложение INI:

http://pastie.org/1119934

Есть проблема с автозагрузкой? Что я мог сделать? Я не могу понять, что не так, поскольку это работает на моем локальном компьютере.

Спасибо за помощь!

KR

Josef

1 ответ

Решение

Ах, я вижу, в чем проблема после того, как вы показали свою структуру каталогов. Проблема в том, что эти каталоги (как resources а также ad а также search) должен быть в верхнем регистре (например, Resources). Причина, по которой он работает на вашем Mac, заключается в том, что, хотя OS X основана на UNIX и чувствительна к регистру, если он не найдет подходящее имя файла, он попробует его без учета регистра.

Поэтому в основном измените имена папок, чтобы они отражали реальные имена классов, и это должно работать. Обратите внимание, что корневые папки в каталоге модуля, такие как models, forms, controllers а также views все еще должен быть в нижнем регистре. Автозагрузчик ресурсов модуля настраивается таким образом.

Другие вопросы по тегам