Новый установщик Symfony: самый быстрый способ начать работу с Symfony

  • PHP
  • 3,493
  • 0
  • 0
  • 0
  • 2 года назад

Совсем недавно команда Symfony презентовала установщик для своего фреймворка. Основная задача которого - упростить процесс установки Symfony.

До настоящего времени установка Symfony подразумевала несколько шагов:

  1. Загрузка исходного кода (zip файл, клонирование git хранилища и т.д.)
  2. Установка вендоров при помощи “composer install”
  3. Редактирование конфигурации

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

Установка установщика

Установщик Symfony это PHAR файл, который исполняется под управлением PHP 5.4 (не 5.3, обновляйтесь!). Для установки выполните команды:

Unix системы (Linux, Mac OS):

$ sudo curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony

Windows

c:\> php -r "readfile('http://symfony.com/installer');" > symfony

Создайте новый проект

Для создания нового проекта выполните symfony new [каталог]

Таким образом будет скачана последняя стабильная версия фреймворка. Указав дополнительный параметр вы сможете указать другую версию. Этот параметр может принимать номер ветки (установит последнюю версию ветки GIT), определенный номер версии или даже “lts” (последняя LTS версия).

Генерация демо проекта

Также установщик может создать для вас демо проект по всем правилам, откуда вы можете извлечь много полезной информации по структуре проекта на Symfony.

Для этого выполните symfony demo:

Затем выполните php app/console server:run для проверки демо проекта на встроенном PHP сервере. Демо проект должен выглядеть приблизительно следующим образом:

А так выглядит демо back-end:

Что случилось с Composer?

Он никуда не пропал. Более того, он все еще используется установщиком Symfony для сборки необходимых зависимостей перед архивацией файла, который скачивает установщик. Также вы можете использовать composer для установки дополнительных библиотек в ваш проект.

Дальнейшее развитие

Команда Symfony затратила не мало сил на разработку установщика в течение последних нескольких месяцев. Он отлично работает, но ему еще не хватает некоторого функционала, который, я уверен, будет добавлен в перспективе. А на данном этапе разработчики достигли основной цели - они создали инструмент для установки Symfony на распространенных платформах.

  • Поддержка HTTPS: сейчас архивированный файл скачивается через HTTP, а не HTTPS. Использование HTTPS играет важную роль. Так как таким образом исключается подмена файла другим измененным вариантом, с нежелательным кодом.

  • Кеширование: если вы устанавливаете одну и ту же версию два раза, то проект будет скачан два раза. Добавив кеширование обеспечит в какой-то степени “оффлайн” режим. Никогда не пытались запустить новый проект в поезде?

  • Сокращение размера файла: в зависимости от платформы установщик выбирает из двух форматов: zip и gzip (tar.gz). Применение bzip2 и xz приведет к еще более высокому соотношению компрессии, что ускорит установщик!

Что внутри установщика

Установщик использует компонент Symfony Console для создания терминального приложения. Затем создается новый проект, который выбирает тип загружаемого файла при помощи Distill. Так как GZIP файл меньше чем ZIP, то в случае когда система поддерживает GZIP именно он и выбирается. Файлы скачиваются при помощи Guzzle, а разархивируются Distill. В конце установщик удаляет ненужные вашему проекты файлы, такие как LICENSE, UPGRADE*, CHANGELOG*, генерирует необходимый секретный ключ средствами openssl_random_pseudo_bytes() при его доступности и создает необходимый файл gitignore.

Комментарии

0