Как работает этот Zend Framework путь? - PullRequest
1 голос
/ 23 августа 2010

Я использую сервер сообщества Zend на Windows Vista.Я следую учебному пособию в книге Zend Framework 1.8 Кейта Поупа.

$this->_view->headLink()->appendStylesheet('/css/main.css'); 

не находит файл main.css (404).Фактический путь к файлу - htdocs / myapp / public / css / main.css.Когда я вынимаю косую черту и меняю ее на

$this->_view->headLink()->appendStylesheet('css/main.css'); 

, она работает нормально.Однако при поиске примера функции appendStylesheet в документации по Zend он использует пример

$this->headLink()->appendStylesheet('/styles/basic.css')

Так что мне кажется, что сейчас «работает» для меня неправильно.Есть идеи, почему это так?

Ответы [ 2 ]

2 голосов
/ 23 августа 2010

Когда вы удаляете косую черту, тег также будет влиять на то, откуда загружаются ваши таблицы стилей.Если базовый тег не существует, тогда CSS будет загружен относительно того места, где вы находитесь (то есть: http://localhost/myapp/ будет загружать CSS из http://localhost/myapp/css/main.css, если вы не используете косую черту во включении)

Из вашего описания я думаю, что корень вашего документа указывает на myapp / вместо myapp / public /, и вы настроили для значение «/ myapp /», поэтому фактическизагрузка css из '/myapp/css/main.css', когда не используется косая черта.

Также проверьте путь к корневому каталогу вашего документа.

0 голосов
/ 04 апреля 2011

Добавьте

echo $this->baseUrl(); 
перед выводом
echo $this->headLink(); 
.Так что в макете это будет похоже на
echo $this->baseUrl() . "/" . $this->headLink(); 

или

Git Code

Надеюсь, это поможет.

...