Я установил фреймворк zend на свою локальную машину. Я настроил vhost в httpd.conf и добавил строку в мой файл hosts (127.0.0.1 mysite). Я запускаю окна 7. Все работает отлично. Проблема в том, что когда я загружаю на сервер хостинга, путы смешиваются. Я загружаю на удаленный каталог zf-framework. Чтобы получить доступ к странице индекса, мне нужно ввести этот URL: http://mysite/zf-framework/public. Он отображает страницу индекса, но когда я нажимаю какие-либо ссылки на странице, они смешиваются и в конечном итоге становятся чем-то вроде http://mysite/controller/action, когда на самом деле это должно быть http://mysite/zf-framework/public/controller/action. Я нашел обход для этой ситуации ... использовать echo $ this-> baseUrl (link) для любых ссылок, которые у меня есть в layout.phtml. Проблема более серьезная, когда дело доходит до отправки форм. Я не могу использовать baseUrl там .... или я не знаю, как его использовать. Есть ли способ написать некоторые общие файлы конфигурации, чтобы это можно было автоматически разрешить с помощью фреймворка. Скажем, написать что-то в index.php или bootstrap.php, который автоматически исправит пути?проблема с zend framework с путями
ответ
Я не нахожусь на этом 100%, но если вы укажете маршрут в своих маршрутах.ini как zf-framework/public/Controller/Action и т. Д., Это должно исправить вашу проблему.
Я бы увидел это как бандад, но я не уверен на 100%, как правильно исправить вашу проблему, а затем вы модифицируете файл vhosts на удаленном сервере, чтобы установить корень документа в общую папку. Если это не вариант, хорошо это должно работать, но знайте, что все ваши файлы потенциально доступны для всех (по крайней мере, ваша структура папок). Я не уверен, какой вред он может сделать (если есть), тогда, если ваша схема базы данных находится в каталоге/data.
Лучше попытаться получить публичный набор в качестве корня сети, если это возможно.
Если вы используете Zend_Application, добавьте следующее в свой файл configs/application.ini.
resources.frontController.baseUrl = "/ ваш-путь-сюда"
Если вы не используете Zend_Application, то сделать это в загрузчике, или index.php файл.
$front = Zend_Controller_Front::getInstance();
$front->setBaseUrl('/your-path-here');
Вы не должны использовать $ this-> BaseUrl() при отправке формы с тем же действием и контроллер (просто оставить вне атрибут действия в виде тега), или при использовании действия редиректор помощник. Однако ссылки в сценариях просмотра потребуют от вас $ this-> baseUrl ('/ url-without-base'), что для меня не так уж плохо.
- 1. Zend Framework, проблема с путями
- 2. Проблема с плагином - Zend Framework
- 3. Zend-framework: проблема с сообщениями
- 4. Проблема Zend Framework с Zend_Layout
- 5. Проблема с Google Картами с Zend Framework
- 6. Zend Framework с phpBB: проблема с URL
- 7. Проблема с PHP-путями
- 8. Zend Framework проблема дома
- 9. Проблема с использованием Zend Framework на NetBeans
- 10. Проблема с флажком на zend framework 1
- 11. Проблема с загрузкой модели в Zend Framework
- 12. проблема с jquery autocomplete и zend framework
- 13. проблема настройки zend framework с netbeans 6.9!
- 14. Проблема с сессией в zend framework
- 15. Проблема Zend Framework с локальным экземпляром сайта
- 16. zend framework Проблема FlashMessenger
- 17. Zend Framework проблема
- 18. Проблема субдомена Zend Framework
- 19. проблема с путями дочерних приложений
- 20. Zend Framework с субдоменами
- 21. Проблема пути PHP/Zend Framework
- 22. Связанный с Zend-Framework
- 23. Zend Framework - проблема перевода Zend_Measure
- 24. Проблема в Zend framework site
- 25. с использованием zend framework с zend-сервером
- 26. с использованием Zend Studio с Zend Framework
- 27. Проблема с путями активов с S3
- 28. Проблема пути помощников Zend Framework
- 29. Zend Framework post date проблема
- 30. Проблема Ajax в Zend Framework
Вы помогли мне решить еще одну проблему! Привет, спасибо! –