Michael Shigorin wrote: > Вот алгоритм примерно обрисовать получается? Задачи-то ясны, > а вот реализация без копий или вагонов симлинков, которые > неизбежно будут искушать "поправить ручками" либо требовать > отдельного окучивания (и порй создавать странные проблемы) -- > непонятна. Чем дольше думаю над алгоритмом, тем больше понимаю, что ничего лучше симлинковой "фермы" придумать не могу. Т.е. устанавливая веб-приложение в /usr/share/... мы тем самым делаем его readonly, но поскольку практически всегда требуется изменение каких-то файлов (причём в каждом виртуальном хосте своё), то необходимо эти изменяемые файлы _копировать_ в виртохост, а на ro-{файлы|каталоги} делать ссылки. На данный момент такое клонирование я реализовал в виде небольшой утилитки farmer. Она умеет клонировать файлы, умеет обновлять их (при повторном запуске). В командной строке просит два параметра: директория-источник и директория-назначение. Вначале скрипта есть такая конструкция: my %config = ( "confFiles"=> ["config/*php","config/conf.xml"] ); Тут в квадратных скобках, перечисляются названия файлов (и/или директорий), которые надо _копировать_, т.е. те самые изменяемые файлы. Имена перечисляемых файлов(директорий) указываются относительно директории источника. Как видно, можно использовать символ '*' - любая последовательность символов (в том чиcле нулевая). Скриптец я заатачил. Есть ли есть желающие протестировать -- welcome. Можно пробовать расширять список confFiles, затем уменьшать и смотреть на результат. Что в итоге. Если каждый веб-пакет, снабжать неким конфигом с указанием: списка rw-файлов, конфигурацией для apache, где вместо реальных путей, указывать некую переменную ($DocumentRoot). То этого уже вполне достаточно для нормального функционирования и обновления веб-приложения. Будет утилита, которая будет по требованию клонировать веб-приложение и подсовывать корректный конфигурационный файл для апаче для конкретного виртохоста. p.s. Тему СУБД я пока не затрагиваю - это наверно можно решать отдельно. -- С уважением, Владимир Леттиев aka crux