CakePHP: плагины в производственной среде

В рабочем развертывании у вас не будет папки /app в общедоступном корневом каталоге; достаточно одной небрежной ошибки, чтобы превратить частные деловые активы, такие как файлы PHP, в открытый текст в Интернете. дополнительно и production в книге описывают, как топологически изолировать каталог webroot, чтобы вы могли сделать папки, содержащие файлы PHP, доступными для чтения только вам. Этот метод отлично работал для меня какое-то время, но теперь я хочу использовать и разрабатывать плагины.

В книге CakePHP опущено обсуждение подключаемых модулей в производственной среде. Для тех из вас, кто использует CakePHP в работе с плагинами, как сделать общедоступными ресурсы в корневой веб-директории данного плагина?

Вы создаете папку плагинов в веб-корневом каталоге, а затем создаете символическую ссылку plugins/my_plugin_name на веб-корневой каталог плагина? Вы вручную копируете папку webroot плагина в webroot? Вы стисните зубы и просто переместите папку плагинов в webroot? Используете ли вы какой-нибудь причудливый плагин для подачи контента?

Какое лучшее решение?


person Myer    schedule 22.11.2010    source источник


Ответы (1)


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

Кроме того, делая это таким образом, ваши личные активы не попадут в общедоступные папки, поддерживая безопасность, о которой вы беспокоитесь.

С другой стороны

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

person Stephen    schedule 15.12.2010