Другие языки программирования и технологии

Как архивировать сайт большого размера средствами Php? На сервере есть лимиты памяти.

Kamal Mammedov
Kamal Mammedov
95 592
не въехал абсолютно. Полная каша.
Свой сайт или чужой, хорошо пусть свой. Цели архивирования - восстановление или клонирование? Что вкладывается в понятие "на лету"? Почему это надо делать именно пхп, когда делов-то на одну строку. Архивирование остаётся в обязанностях хостера. Он же определяет ограничения. Архивирование - сервисная функция и ограничения сайта ей фиолетовы. Если хостер отказывает в подобном, то увы.
Есть ли ограничения в физической памяти на сервере? Куда-то архив должен сохраняться и доступ к нему обязан быть, ведь его делают для чего-то. memory_limit ограничивает ОП, но её с лихвой хватает для любого процесса архивирования, т. к. эти алгоритмы не предполагают создания всего образа архива в ОП. defalte делается кусками, чунками: прочитал чунк - скинул его архив на диск.
Всё - ванговать устал. Один из вариантов - запускать периодически wget (или нечто подобное) . Он будет скачивать лишь обновления и уже у себя, на локальной машине делать архивы изменений
Денис Тимофеев
Денис Тимофеев
86 252
Kamal Mammedov Я знаю лишь PHP, и знаю, что можно им создавать архивы.

Но для ПХП выделена память (memory_limit = 128M)

Сайт размером в 200М

Потому, как только я начинаю его архивировать, при достижении PHP размера 128М скрипт останавливается и выдается ошибка о том, что памяти более нет.

Мне надо, чтобы средствами ПХП был создан не ОДИН файл ZIP-архив, а несколько файлов, например по 20М (10 файлов).

Для чего?

Чтобы скачивать ИХ, а не весь сайт, так как там 50 000 файлов.

Теперь понятно объяснил?

что такое wget - НЕ ПОНЯТНО вообще... и причем здесь PHP????
Kamal Mammedov сайт мой и в головной папке я размещаю PHP срипт, который его архивирует, то есть весь сайт загоняет в zip-архив.
1. Я не знаю, какие ты "стандартные скрипты" используешь, но получали же люди гигабайтные архивы при 64МБ оперативной памяти. Так что проблема не в принципе, а в том, как ты используешь скрипты.
2. Если php почему-то (ты так и не объяснил, что именно и почему) не работает - вызывай внешний архиватор через exec или system.
Kamal Mammedov exec и system никогда их не пробовал...

А они вообще ВЕЗДЕ разрешены - это же, если я правильно понимаю сверх функции, с помощью которых и сервак весь можно стереть.