1

Я хочу передать свой сайт по FTP на несколько серверов, эти серверы доступны в отдельных сеансах в WinSCP. Могу ли я продублировать изменения, внесенные в одну, в другие?

2 ответа2

2

WinSCP поддерживает скрипты. Вы можете сделать скрипт, который загружает (или даже лучше синхронизирует) сайт. Сценарий может принимать параметр с именем сохраненного сеанса (сайта) в WinSCP (или, лучше, URL-адрес сеанса).

Сценарий WinSCP (script.txt) может выглядеть так:

open %1%
synchronize remote C:\path_to_website /home/website
exit

Оберните это в командный файл (sync_site.bat), например:

winscp.com /script=script.txt /parameter %1

И тогда вы можете назвать это для любого количества сайтов (сохраненных сеансов), таких как:

call sync_site.bat site1
call sync_site.bat site2
call sync_site.bat site3

Некоторые ссылки:
https://winscp.net/eng/docs/guide_automation
https://winscp.net/eng/docs/scripting#syntax

1

Если вы находитесь на серверах Windows, вы можете просто использовать DropBox для зеркалирования сайтов от сервера к серверу. Возможно, вам придется установить AlwaysUp или найти другой способ запуска Dropbox как службы.

Некоторые FTP-клиенты поддерживают сценарии. Не знаю о WinSCP. С помощью сценариев вы можете написать сценарии VBS для автоматизации процесса FTP и запуска обновлений для нескольких хостов.

Если вы работаете на IIS-серверах Windows, вы также можете использовать платформу WebFarm (бесплатно), чтобы IIS автоматически копировал содержимое с главного узла на все ваши вышеописанные узлы. В Linux вы можете сделать то же самое, запустив скрипт оболочки, который вручную проверяет "главный узел" на наличие изменений и обновляет клиенты, загружая все сайты напрямую. Это может быть сделано через SSH или SFTP, или кучу разных настроек.

В зависимости от вашей настройки это может быть хорошим вопросом для ServerFault.com

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .