Не думаю, что это проблема IIS. Я думаю, что это неправильное использование Zend_Loader_Autoloader_Resource
.
Вы говорите автозагрузчику через Zend_Loader_Autoloader_Resource
добавить пространство имен Application
и указать, что оно находится в basePath APPLICATION_PATH . '/helpers'
.
Из этого, если я попытаюсь:
new Application_Menu_Primary();
ZF должен найти его в APPLICATION_PATH . '/helpers/menus/Primary.php'
. Это действительно то место, где вы хотите найти файл? Я думаю, нет. Кроме того, попытка сделать это: Application_Controller_Plugin_Acl
никогда не будет включена, потому что вы пропустили тип ресурса Controller_Plugin
и его каталог внутри APPLICATION_PATH . '/helpers'
(я сомневаюсь, что вы этого хотите).
Я бы посоветовал вам полностью исключить использование Zend_Loader_Autoloader_Resource
, добавить свое пространство имен в каталог /library
приложения и создать следующую структуру каталогов:
/library/Application/Controller/Plugin/Acl.php
/library/Application/Form/
...etc
Затем вам нужно добавить /library
путь к вашему PHP include_path через index.php. (Я думал это стандартно)
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
Наконец, добавьте пространство имен Application
к вашему application.ini
:
autoloaderNamespaces.app = 'Application'
Это должно прояснить твои проблемы. Предлагаю вам больше узнать о цели этого занятия Zend_Loader_Autoloader_Resource
.