PHP FTP Synchronizer

Ким Хаскелл

© 2007-2016 Ким Хаскелл, .com, .fr

Бесплатное программное обеспечение с открытым исходным кодом GNU GPL 2.0


Что такое PHP FTP Synchronizer

?

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

Он обнаруживает изменения и переносит измененные файлы.

Возможно передача файлов, редактируемых в течение нескольких дней.

К кому обращается PHP FTP Synchronizer?

Веб-мастерам, которые делают сайт локально, а затем переносят страницы на сервер.

Поэтому он не подходит для тех, кто работает онлайн непосредственно на сайте, в частности для тех, чей сайт полностью управляется CMS.

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

Как работает программное обеспечение

Мы передаем программе полезные параметры: адрес ftp, логин, пароль, удаленный каталог, исходный каталог. Исходный каталог просматривается со своими подкаталогами рекурсивно, содержимое сравнивается с удаленным содержимым, а измененные файлы загружаются на сайт.

Основными вариантами ускорения являются:

Как пользоваться программой

Программа используется в командной строке, в окне командной строки Windows или консоли Unix.

Рекомендуется создать пакетный файл (.BAT в Windows), чтобы не вводить параметры при каждом использовании.

Можно добавить значок на рабочем столе, который запускает командный файл и щелкает при каждом изменении файла.

В личной среде можно поместить все параметры в пакетный файл.

В коллективной среде не требуется вводить пароль в файл. Затем программа будет запрашивать его при каждом использовании.

Оба режима работы

Возможны два режима работы с другими опциями:

  1. Трансфер в зависимости от периода.
    В этом случае все измененные в тот же день или с определенного числа дней файлы переносятся на сервер. Каталог резервного копирования становится необязательным.

  2. Передача и резервное копирование.
    Файлы сравниваются с содержимым каталога резервного копирования. Те, чья дата (примерно вторая), более поздняя, копируются на сервер, а также в каталог резервного копирования. В последнем с той же датой, что и в исходном файле.

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

Синтаксис командной строки

Команда имеет форму:

solp ftpsync [опции] [параметры] dirsource [url ]

или непосредственно в PHP:

php ftpsync.php [опции] [настройки] dirsource url

Настройки позволяют указать логин, пароль и т.д. Если настройки отсутствуют, программа запрашивает их.

Параметры определяют режим обновления и то, что требуется показать. Когда опции отсутствуют, используются параметры по умолчанию.

URL - это адрес ftp в форме "ftp. Скриптол. fr" Если она отсутствует, программа запрашивает ее.

Параметры и настройки

-t Тестовый режим, программа идет виртуально и показывает, что она сделает. Но ничего не меняется ни на сервере, ни в директории резервного копирования. По умолчанию режим действителен.

-ndays Режим периода. За кодом -n следует количество дней: 0 за тот же день, 1 за вчерашний и так далее. Все, что меняется за данный период, сегодня, вчера или за последние n дней, проходит через сервер .

-backup Устанавливает каталог резервного копирования и указывает, что выбран режим резервного копирования. Дата файлов сравнивается с датой файлов в этой директории, загружаются более поздние файлы. Под датой подразумевается точный момент в ближайшее время.
Если этот вариант опущен, программа будет сравнивать файлы с теми, что находятся на сервере. Передача происходит очень медленно и может быть прервана сервером.

-ddirectory Устанавливает каталог на сервере, в который копируются файлы. Часто веб-сайт находится в справочнике по адресу:

-dwww/

На многоадресовом хостинге необходимо указать имя каталога, связанного с доменом. Каталог такой же, как и тот, который используется с программой передачи ftp.
Этот каталог не является частью URL-адреса браузера.

-login Указывает логин. Если указан, но ничего не следует, программа останавливается. Пока если вариант не указан, программа запросит логин.

-pmotdepasse Указывает пароль. Работает как логин. Если ты работаешь в коллективной среде, не ставь пароль в командный файл. Лучше вводить, когда программа просит.

-c Выполняет сравнение содержимого, а не даты. Это делается с каталогом резервного копирования и, конечно, медленнее, чем сравнение по датам, что является опцией по умолчанию.

-a Передает все файлы для восстановления сайта, сравнение не производится. Если указан каталог резервного копирования, то в этом каталоге также будет копия.

-v Многословный режим. Отображение дополнительных сведений об операциях.

-q Безмолвный режим. Не отображаются операции программы.

Параметры тестирования ссылок

Для каждой страницы, загруженной на сервер, можно (начиная с версии 1.3) проверить содержащиеся в ней ссылки, чтобы избежать разрывов ссылок, будь то внутренние или внешние.

Для активации теста было добавлено два варианта:

-u Активация теста.

-wsite Указать домен сайта.

URL-адрес сайта необходим для относительных внутренних ссылок, чтобы восстановить допустимый URL-адрес.
Если адрес ftp тоже адрес сайта, параметр -w лишний, URL ftp будет преобразован в http. Это не касается сайтов с одним хостингом, поэтому необходимо указать домен сайта.

Параметр карты сайта

Карта сайта обновляется автоматически для всех новых веб-страниц. Если страница уже находится в списке, будет обновлена только дата. Частота изменения и приоритет не изменяются.

-m Активация обновления карты сайта.

Заключение

В случае проблем с использованием PHP FTP Synchronizer, не стесняйтесь выложить на форум на выбранном тобой языке, iqlevsha.ru на французском, scriptol.com на английском.