Публикация активов из модулей в Zend Framework 2

Обычно рекомендуется хранить активы модуля внутри каталога модуля, внутри moduleName/public (или того, что вы хотите назвать каталогом актива).

Zend Framework 2, к сожалению, не поддерживает публикацию активов для активов модуля по умолчанию. Согласно MWOP , ничего не планировалось ~ 1 месяц назад, и я думаю, что до сих пор нет реального плана (у них, вероятно, была большая работа, чтобы подготовить стабильную версию). (Но, однажды, они собираются решить эту проблему.)

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

Как вы справляетесь с этой проблемой? Может быть, простое решение этой проблемы с небольшим усилием кодирования? Мой план проекта не позволяет мне самостоятельно создавать сложные операции с активами. Есть ли рекомендуемая, легкая структура активов, совместимая с ZF2? Я уже думал о создании символических ссылок, но я не думаю, что это было бы лучшим решением, потому что для этого потребовалась бы дополнительная настройка веб-сервера ( FollowSymlinks ) и дополнительные работы по техническому обслуживанию (приложение разрабатывается локально и развертывается на удаленном сервере).

Заранее спасибо.

Это обсуждалось ранее во многих местах, и это сводится к трем способам управления этим.

  1. Копирование и вставка активов в общедоступный / каталог

  2. Использовать символические ссылки

  3. Используйте модуль загрузки активов, такой как assetic

Простым решением было бы сделать процесс копирования активов частью процесса сборки.

Был задан еще один вопрос. Как объединить общие каталоги модулей Zend Framework 2 для информации.

Я знаю, что это довольно старый, но я хотел добавить эту информацию для других читателей.

Теперь есть модуль для этого, который был полностью протестирован и используется (и даже зависит от) от многих модулей.

Посмотрите здесь: https://github.com/RWOverdijk/AssetManager

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

Существует также четвертый вариант. Используйте псевдоним каталога в конфигурации VirtualHost.