Подпапка Zend в качестве DocumentRoot для поддомена дает недопустимому контроллеру имя папки-контроллера - PullRequest
1 голос
/ 26 ноября 2011

У меня есть Zend-проект, расположенный в подпапке / account.Я хочу иметь возможность создавать виртуальные хосты поддоменов и указывать их DocumentRoot на эту подпапку

. В index.php у меня есть эта строка, которая устанавливает URL-адрес папки проекта Zend

 define('SiteUrlUser','http://'.$_SERVER['HTTP_HOST'].'/account/');

Настройка DocumentRoot для одного субдомена:

 DocumentRoot /var/www/account

. Когда я просматриваю сайт на subomdain.domain.com, он всегда добавляет / account к URL-адресам, что нормально, но затем выдает эту ошибку

Неустранимая ошибка: необработанное исключение 'Zend_Controller_Dispatcher_Exception' с сообщением 'Указан неверный контроллер (учетная запись)'

Теперь, если я удаляю / учетную запись с любого URL при доступе к сайту через поддомен, страницы отображаются нормально,Таким образом, в основном www.domain.com/account/something.html в поддомене будет subdomain.domain.com/something.html, который прекрасно работает.

Я планирую настроить сервер так, чтобы всепользователи будут входить через свой поддомен.Папка zend будет помещена на собственный сервер и использована в качестве DocumentRoot для всех поддоменов, так что бы я изменил в index.php, чтобы это работало?

Спасибо

1 Ответ

0 голосов
/ 26 ноября 2011

Я не вложил бы проект в другой не-Zend проект, я бы дал ему собственный корень вне каталога, доступного через Интернет для другого проекта, и указал бы там поддомен. Затем просто сделайте ваш модуль / контроллер для учетной записи по умолчанию через маршрутизацию.

Однако, если вы их вложите, вам придется установить baseUrl

Если родительский проект также является приложением Zend, то я бы слил их вместе и использовал бы маршрутизацию для обработки отображения подкаталога таким образом, что вы можете использовать подстановочный знак vhost и указать им всем один и тот же экземпляр приложения в файловой системе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...