Как сделать Zend Webroot прозрачным или абсолютным? - PullRequest
1 голос
/ 16 сентября 2011

Я занимаюсь разработкой веб-приложения Zend с классической структурой файловой иерархии, а именно:

application/
docs/
library/
public/
tests/

Поскольку приложение используется на разных компьютерах с разными конфигурациями сервера, в сценариях просмотра я хотел бы иметь пути ссылки, которые работают независимо от того, где корень документа был установлен в конфигурации веб-сервера.

Примеры следуют:

Host FOO настроен на указание корневого каталога документа на $ APP / public /, поэтому URL браузера будет "http://myapp/"

Host BAR не настроен как FOO, а URL браузера "http://localhost/my/deep/path/to/$APP/public"

В скрипте вида я хотел бы написать следующее:

<img src="<?= $urlbase ?>images/logo.gif" />

для отображения изображений из $ APP / public / images / logo.gif таким образом, чтобы они работали как в FOO, так и в хостах BAR.

Что мне использовать вместо $ urlbase?

PS: я пытался использовать:

<?= $this->url() ?>

но он не учитывает контроллеры, действия и параметры получения, содержащиеся в URL, то есть в "http://myapp/index/login/" он возвращает" / index / login / ", в то время как мне нужно, чтобы он просто возвращал" / ».

Спасибо

1 Ответ

0 голосов
/ 16 сентября 2011

Используйте помощник BaseUrl

<img src="<?php echo $this->baseUrl('images/logo.gif') ?>" />
...