У меня есть сайт с четырьмя поддоменами:
http://www.domain.com/
http://dev.www.domain.com/ # (dev environment for www.domain.com)
http://blog.domain.com/
http://dev.blog.domain.com/ # (dev environment for blog.domain.com)
Я хотел бы добавить ссылки из моего www
поддомен моего blog
субдомен такой, что:
http://www.domain.com/
, то URL ссылки должен быть http://blog.domain.com
http://dev.www.domain.com/
, то URL ссылки должен быть http://dev.blog.domain.com
Есть ли простой способ сделать это с помощью URL-помощника Zend Framework 2?
Я попытался настроить свой маршрут для blog
поддомен следующим образом:
'blog' => [
'type' => 'Zend\Mvc\Router\Http\Hostname',
'options' => '[:1st.]blog.domain.com',
'constraints' => [
'1st' => 'dev',
]
],
и вызов помощника URL из представления на dev.www
поддомен выглядит так:
$this->url('blog', [], null, true);
Я думал, что прохождение true
в качестве четвертого аргумента сохранятся существующие параметры без изменений. Однако генерируемый URL всегда http://blog.domain.com/
а не желаемый http://dev.blog.domain.com/
Есть идеи? Интересно, нашел ли я ошибку в ZF2. Спасибо.
Я понял. Причина, по которой параметр не остался неизменным, заключается в том, что он не существует в www
поддомен. Итак, мне нужно обновить мой www
субдомен маршрутизируется следующим образом:
'www' => [
'type' => 'Zend\Mvc\Router\Http\Hostname',
'options' => [
'route' => '[:dev.]www.worksessions.com',
'constraints' => [
'dev' => 'dev',
),
),
'may_terminate' => false,
'child_routes' => [
// Routes which were literal and part of www go here.
],
А теперь при использовании помощника просмотра URL для навигации из www
в blog
или же dev.www
в dev.blog
, dev
параметр остается неизменным! Вуаля!
Других решений пока нет …