![Загрузите файл с ftp-сервера №1 на ftp-сервер №2](https://rvso.com/image/1496901/%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D0%B5%20%D1%84%D0%B0%D0%B9%D0%BB%20%D1%81%20ftp-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0%20%E2%84%961%20%D0%BD%D0%B0%20ftp-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%20%E2%84%962.png)
Я хотел бы использовать PHP-скрипт с библиотекой cURL для загрузки одного имени каталогаданные(с одним .xml и одним .txt.zip файлом), который находится внутри моего ftp сервера № 1, на мой ftp сервер № 2. Этот каталог должен загружаться каждые 24 часа.
Возможно ли это сделать с помощью cURL?
решение1
То, о чем вы просите, не является строго «загрузкой», которую вы можете сделать.
Если я правильно вас понял, вы хотите загрузить файл с сервера FT №1, а затемзагрузитьфайл на FTP-сервер № 2. Не существует прямого способа указать одному серверу передать его другому...
...если у вас нет доступа для запуска программ на самих серверах (т.е. если вы администратор или у вас есть доступ ssh/php к одному из реальных серверных компьютеров). ТОГДА вы можете загрузить файл с FTP-сервера №1 на локальный компьютер (которыйявляетсяFTP-сервер №2).
решение2
Я делаю что-то подобное со своим VPS и использую multcloud.com. Они предлагают 2 ТБ трафика бесплатно и 10 ТБ, если вы поделитесь им в социальных сетях. Вы можете настроить на нем повторяющиеся переводы. Раньше я использовал mover.io, но теперь это платный вариант.
С наилучшими пожеланиями.
PS:- Если это не то, что вы ищете, пожалуйста, оставьте комментарий и дайте мне знать. Я ничего не знаю о cURL, поэтому не могу ответить на эту часть вашего вопроса.
решение3
Я не могу ответить вам комментарием... Это так проблематично... В любом случае я попытался использовать file_get_contents и file_put_contents, что разрешено моим хостером.
<?php
/* FTP SERVEUR #1)
$contents = file_get_contents("ftp://username:pass@directory/file.xml");
/* FTP SERVEUR #2)
file_put_contents("ftp://username:pass@directory/file.xml", $contents);
?>
Я выполняю это, я не вижу никакого file.xml, входящего в мой #2, и у меня нет никакой ошибки! Я пытался сделать, echo($contents)
и это работает. Проблема в поступлении file_put_contents.
РЕДАКТИРОВАТЬ: Это работает, если вы установите разрешения для вашего целевого каталога на сервере №2 на 777
.