| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > перенос сайта на другой хостинг Zend Framework |
| Автор: g27 25.2.2012, 14:12 |
| Здравствуйте, вообщем достался мне сайт. Как я понял он на Zend Framework. Сам я с ним ниразу не работал до этого. Перенёс на другой хостинг, единственная разница то что там был каталог public и рядом с ним каталоги application и т.д. а на другом хостинге public_html. Я всё скопировал так же как было, пустил поиск по всем файлам, заменил где нашёл public на public_html. Но всёравно.. получаю такую ошибку Fatal error: Class 'Euro_Controller_Plugin_LangSelector' not found in /home/****/domains/****/library/Zend/Application/Resource/Frontcontroller.php on line 111 если я удалю подключение класса, он и на другие классы пользователя такое кидает. Подскажите где смотреть пожалуйста. явно я что-то упустил. |
| Автор: Fortop 26.2.2012, 16:29 |
| А собственно Euro/Controller/Plugin/LangSelector.php где-нибудь существует? |
| Автор: g27 27.2.2012, 12:01 |
| ну естественно.. я копипаст сделал. всё существует. но что-то не видит ни его, ни другие классы.. тут что-то не так с путями может, не знаю где посмотреть( |
| Автор: ksnk 27.2.2012, 12:53 |
| Перед этим вызовом " ...n/Resource/Frontcontroller.php on line 111" поставить сброс в лог информации getcwd(), ini_get('include_path') и посмотреть почему в пути нет файла Euro_Controller_Plugin_LangSelector Вроде в Zend довольно простой autoload, без особенных наворотов, но можно еще поискать по коду функции spl_autoload_reister и проверить какие функции зарегистрированы в дополнение к нему. Может там собака порылась... |
| Автор: g27 27.2.2012, 15:39 |
| спасибо за наводку, буду копать |
| Автор: g27 29.2.2012, 02:08 |
| echo getcwd() . "<br/>"; echo ini_get('include_path'); /home/*username*/domains/*domain*/public_html/public /home/*username*/domains/*domain*/public_html/application/../library:/home/*username*/domains/*domain*/public_html/library:.:/usr/share/pear вообщем получаю такое, но увы яснее мне не стало. вообщем я всё что было в каталоге public_html на старом сервере перекинул в public_html на новый.. в первом посту я ошибся, невнимательно посмотрел. а функцию spl_autoload_register нашёл тока в library\Zend\Loader\Autoloader.php, как я понял тока там где она и должна быть.. |
| Автор: Fortop 29.2.2012, 09:33 |
Он лежит тут? Попробуйте в строке подключения файла указать полный путь - если поможет... то разбирайтесь с Autoloader и настройками сайта. Покажите что лежит в application/configs/application.ini ? что находится в application/Bootstrap.php ? |
| Автор: g27 29.2.2012, 13:06 | ||||
| Euro/Controller/Plugin/LangSelector.php именно там и существует
ничего такого тут не замечаю, что бы как-то индивидуально привязывало к серверу.. может какие-то настройки самого хостинга? сайт то работает сам по себе на старом месте, на новом не хочет(( он и другие классы пользователя не видит. если убрать подключение этого класса, тоже ошибки кидает на другие. меня смущают пути в application.ini .. на старом хостинге корневая папка была не public_html а public.. которая была в ней.. так вот я думаю может что-то тут связано. буду пробовать менять пути |
| Автор: Fortop 29.2.2012, 18:13 | ||
Ну посмотрите еще index.php В нем могло это затесаться. В остальных местах явной привязки нет. Если не поможет, то напильник в зубы и дебажить. Причем дебажить надо именно автозагрузчик. На предмет используемых префиксов/неймспейсов и путей для них. Плюс проверьте содержимое APPLICATION_PATH
|
| Автор: g27 29.2.2012, 19:12 | ||
всё тут хорошо.. ладно, где там мой напильник) отпишу как найду причину что было не так. |
| Автор: g27 29.2.2012, 23:12 |
| вообщем.. вы будете смеятся теперь надо наверное пройтись по скриптам и удалить упоминание домена везде.. что бы он и без него работал.. |
| Автор: g27 6.3.2012, 13:29 | ||
да, Вы правы. что-то не так с хостингом. закинул на другой, на нём всё работает. буду думать что же не так.. |
| Автор: g27 9.3.2012, 23:50 | ||
начал читать теорию по Zend и т.д. про автозагрузчик.. и вообщем я его не нашёл на этом сайте) я не знаю как там он работает, явно где-то есть, но после того как я вставил такую функцию в Boostrap то всё заработало
всем спасибо за внимание, проблему решил) |