Настраивали сайтовый движок товарищу… Такого сервера никому не пожелаешь – в процессе вылезли все глюки какие только можно было вообразить. Ух сколько он погонял меня по коду… Правда ему наверно потяжелее было – в моем коде местами сам черт ногу сломит. Но вроде настроили. Зато теперь движок можно с уверенностью пускать на самый хитрожопый сервер – хуже уже не будет %)))
А вообще последнее время начинаю понимать насколько я был неправ, когда не уделял должного внимания читаемости кода и заблаговременному планированию разработки продукта. Когда приходится рыскать туда-сюда по куче файлов в поисках хотя бы нужного места, которое еще и не всегда помнишь, это очень нервирует. Успокаиваешь себя лишь тем, что типа вот, напишу еще немного и займусь рефакторингом, откладывая каждый раз на более поздний срок =\ И неохота. Хоть рефакторинг и крайне полезное занятие, но крайне утомительное…
Чего иногда не придет в дурную голову в процессе поиска решения для очередного глюка.
Посчитав, что было бы неплохо иметь саморазвертывающийся из инсталлятора сайт (аки инсталлшилд, тока сбоку), стал рыскать в поисках универсального решения. Zip отпал сразу – не везде есть php_zip и pecl, остановился на gz-файлах. Проблема сократилась до сливания всей структуры директорий в один файл, для чего поначалу был выбран tar, но после отпал, так как лень было возиться с форматом, да и руки чесались написать что-нибудь свое =) Помог поуровневый обход папок и сливание всего контента в строки через бинарно-безопасный fread, а обратно соответственно предварительное создание структуры папок и выливание файлов через fwrite с последующим chmod-ом по необходимости %) Уложился в два килобайта для запаковщика и один килобайт для распаковщика. Один недостаток – если контента много, может памяти не хватить, она, как известно, у пхп весьма ограничена через memory_limit. Но мы с этим еще поборемся ))
Уже от нескольких человек слышу упреки в свой адрес по причине отсутствия у меня ЖЖ %) Не то, чтобы мне нечего было сказать, но обычно область моей активности ограничивалась форумами. Что же, хотели – получайте %)
Tags: