У меня есть веб-сайт для перехода с одного хоста на другой .. например: от bluehost до hostgator ... я сделал почтовый индекс моего сайта, который составляет 2 ГБ ..

я хочу знать, есть ли какое-либо программное обеспечение или что-то, что позволяет мне загружать его непосредственно на другой хост, не загружая zip на мой ПК и снова загружая на хост через ftp ???

5 ответов5

3

Технически возможно выполнить межсерверную передачу по FTP (вы открываете управляющие соединения для каждого сервера и настраиваете соединения для передачи данных соответствующим образом, чтобы они указывали между собой, а не на ваш локальный хост). Я сделал это вручную (хотя и много лет назад), но я не знаю ни одного "дружественного" клиентского приложения, поддерживающего эту функцию.

Если любой из хостов разрешает вам доступ по SSH, вы можете просто использовать утилиту командной строки ftp чтобы отправить файл напрямую таким образом:

  1. войти на сервер через SSH
  2. Перейдите в правильный каталог (где файл либо есть, либо хочет пойти)
  3. запустите ftp <name_or_IP_address_of_other_server> и введите свое имя пользователя и пароль при появлении запроса
  4. перейдите в каталог, где находится файл (или он хочет перейти) с помощью команды cd
  5. выполните binary команду, чтобы убедиться, что в передаче не происходит преобразований перевода строки (или аналогичных)
  6. выдать hash если вы хотите немного индикации прогресса во время передачи файла
  7. если при отправке файла с сервера, который вы использовали по SSH, введите команду put <filename> , и если вы хотите получить файл с другого сервера на тот, на котором вы вошли в систему, используйте вместо него значение get <filename> .
  8. подождите ... (даже если вы получаете 100-мегабитную передачу между серверами, 2-гигабайтный файл займет несколько минут)

Для получения более подробной информации о клиенте ftp из командной строки либо запустите на сервере man ftp либо посмотрите онлайновую копию man-страниц, например эту (хотя чтение локальной справочной страницы сервера для команды немного безопаснее, поскольку вы точно знаете, что это) речь идет о версии у вас).

Если оба хоста позволяют вам доступ по SSH, то это немного проще, так как в большинстве случаев SCP/SFTP также будет включен, и вы можете сделать это:

  1. войдите на сервер, на который необходимо скопировать файл
  2. перейдите в каталог, где файл должен быть
  3. выполните команду, подобную scp user@other.server.tld:~/path/filename .

или же

  1. войдите на сервер, на котором в данный момент находится файл
  2. выполните команду вроде scp path/to/file/filename user@other.server.tld:~/

Еще один вариант, если конечный сервер разрешает доступ по SSH и файл, который вы хотите передать на него, доступен через HTTP или HTTPS, это передать файл по HTTP(S) с помощью wget (на большинстве хостов wget будет установлен на их серверах):

  1. войдите на сервер, на который необходимо скопировать файл
  2. перейдите в каталог, где файл должен быть
  3. запустите команду вроде wget http://source.server.tld/path/filename
1

Технически, обычно это не так - у большинства веб-провайдеров есть DNS-серверы, а не клиенты, так как FTP-сервер обычно используется для атак на серверы.

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

1

Существуют некоторые протоколы, которые поддерживают это, но я не ожидаю, что они будут поддерживаться вашими провайдерами. Одним из таких механизмов, который является расширением для FTP, является FXP.

0

Вы можете проверить AutoFileMove, он позволяет пользователям перемещать файлы между двумя учетными записями FTP без загрузки файлов на какие-либо локальные устройства.
http://youtu.be/iV8E4oetvzA

0

Убедитесь, что на хосте B включен Web-dav, вы должны иметь возможность использовать, например, cadaver для прямой передачи файла.

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