Jun 07

Обратились ко мне сегодня с этим вопросом… Сходу придумал 3 способа развертывания проектов, использующих Symfony на хостинг.

Устанавливаем Symfony, используя PEAR

Собственно, об установке Symfony я уже писал, тут, в общем-то добавить нечего. Если на хостинге установлен PEAR, то советую устанавливать фреймворк через него - получите бонусы в виде удобных обновлений.

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

Устанавливаем Symfony, используя копирование :)

Собственно, не все почему-то догадываются об этом способе установки фреймворка на сервер. Можно просто взять, скачать “чистую” Symfony и скопировать её на сервер, либо даже можно скопировать уже работающую версию фреймворка с вашей рабочей машины.

Естественно, проблемы такие же, как и в предыдущем случае - при deployment’е прийдется прописывать пути к Symfony в config/config.php. И еще одно - вы лишаетесь возможности удобного обновления Symfony.

Устанавливаем Symfony, используя “заморозку”

Судя по всему, Definitive Guide to Symfony читали не все (или читали не всё), так как там этот вариант рассматривается. Суть в том, чтобы получить полностью работающий проект, не имеющих внешних зависимостей, т.е. вся библиотека Symfony будет включена в проект. Достигается это всё с помощью комманды:

$ symfony freeze

Которая скопирует весь фреймворк в директорию lib/symfony и сам изменит config/config.php. Таким образом вам останется лишь скопировать ваш проект на хостинг.

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

PS. Для того, чтобы “разморозить” проект, выполните:

$ symfony unfreeze

PPS. Если кто-нибудь знает, как правильно установить PEAR на masterhost’е - отпишитесь, тут человек спрашивал, а я с этим хостером никогда не работал.

written by fxposter

One Ping to “Symfony Projects Deployment”

  1. rpsblog.com » A week of symfony #75 (2->8 june 2008) Says:

    […] Symfony Projects Deployment […]


5 Responses to “Symfony Projects Deployment”

  1. 1. Гвидон Маляров Says:

    в убунте еще системным пакетом можно поставить, на сколько я помню

  2. 2. Develop7 Says:

    Потс ниачьом — достаточно внимательно читать мануалы. Так?

  3. 3. Vit228 Says:

    Спасибо Павел, помогло.
    Как разберусь с Мастерхостом, чиркну, что бы народ знал.

  4. 4. FX Poster Says:

    Гвидон Маляров
    Можно, как и в SUSE, но это “непереносимо” + вряд ли это применимо на хостинге. :)

    Develop7
    Что народ хочет – то я и пишу… В общем-то – так, но…

    Vit228
    Не за что.

  5. 5. ruFog Says:

    Может быть запоздалый пост – я использую VPS на мастерхосте. Это очень удобно – ставить можно все что нужно и обновлять когда нужно. Когда у тебя рут-доступ к твоему VPS поставить можно все что угодно. В том числе и PEAR.

Leave a Reply