У меня это почти сработало несколько часов назад, но я не могу заставить все вещи переписывания модов работать правильно для Zend.
Учитывая эту структуру каталогов:
/home/branches/branch1/public/index.php
/home/branches/branch2/public/index.php
/home/branches/branch3/public/index.php
Как я могу получить к ним доступ таким образом:
branch1.branch.example.com
branch2.branch.example.com
branch3.branch.example.com
Без необходимости жесткого кода в каждой ветви?
Вот моя отправная точка ( источник ), (я как-то могув данный момент это даже не работает, но я клянусь, это сработало сегодня утром, ха!).
ServerAlias *.branch.example.com
RewriteEngine on
RewriteCond %{HTTP_HOST} .* [NC]
RewriteCond %{HTTP_HOST} ^([^\.]+)\.branch\.example\.com
RewriteCond /home/branches/%1/public
RewriteRule ^(.*) /%1/$1 [L]
(Примечание: на самом деле я работаю с огромной базой кода, используя старую альфа-версиюZF, который использует /www/errors.php в качестве начальной загрузки вместо /public/index.php (и может даже потребоваться некоторые правила переписывания, отличные от текущей версии), но я изменил приведенный выше код для соответствия текущей настройке ZF)