Заливка папки по FTP и хостингер

Регистрация
27.12.2012
Сообщения
70
Благодарностей
8
Баллы
8
А также все его остальные фрихи.
Не могу залить файлы в public_html. Версия 5.4.0. Если не указываю папку для заливки, то льет прямиком в корень мимо public_html, если указываю папку public_html (пробовал и /public_html/), то он создает на хостинге в папке public_html еще одну public_html и уже туда льет... Как с этим справится? Кто подобное делал подскажите какую папку писать. Какие там галочки может поставить/убрать. Я уже не знаю.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
я использую для хостингера C# для залития по FTP:
Код:
ZennoPoster.FtpUploadDirectory(project.Variables["ftphost"].Value, 21, "FTP", project.Variables["ftpusername"].Value, project.Variables["passacc"].Value, "", project.Variables["destination"].Value, project.Variables["sourcepath"].Value, true, false);

где переменные:
{-Variable.sourcepath-}: c:\\qwe\\asd (т.е. экранируется слэш)
{-Variable.destination-}: /
{-Variable.ftphost-}: ftp.qwerty.domain.com
 
Регистрация
27.12.2012
Сообщения
70
Благодарностей
8
Баллы
8
а в кавычках FTP это чего? И дестинейшн я так понял как раз за папку на хостинге отвечает?
И еще, он загрузит содержимое asd или саму asd на хостинг?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
а в кавычках FTP это чего? И дестинейшн я так понял как раз за папку на хостинге отвечает?
И еще, он загрузит содержимое asd или саму asd на хостинг?
FTP в кавычках - оставить как есть..
загрузит содержимое папки asd..
 
  • Спасибо
Реакции: Jorge_Rodrigez
Регистрация
27.12.2012
Сообщения
70
Благодарностей
8
Баллы
8
Все отлично заработало! Дай Бог тебе здоровья! А то я два дня уже страдаю...
 
  • Спасибо
Реакции: Sergodjan

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113

TotKto

Client
Регистрация
12.07.2013
Сообщения
123
Благодарностей
12
Баллы
18
я использую для хостингера C# для залития по FTP:
Код:
ZennoPoster.FtpUploadDirectory(project.Variables["ftphost"].Value, 21, "FTP", project.Variables["ftpusername"].Value, project.Variables["passacc"].Value, "", project.Variables["destination"].Value, project.Variables["sourcepath"].Value, true, false);

где переменные:
{-Variable.sourcepath-}: c:\\qwe\\asd (т.е. экранируется слэш)
{-Variable.destination-}: /
{-Variable.ftphost-}: ftp.qwerty.domain.com
Парень, ты святой
 
  • Спасибо
Реакции: CSS и Sergodjan

Badboy

Client
Регистрация
07.02.2014
Сообщения
39
Благодарностей
1
Баллы
8
Вот как сделал :
Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", ".", project.Variables["Directory"].Value+\cms\site_+project.Variables["random_number"].Value, true, false);
Мне выдаёт ошибку всё рамно вида:
"Unexpected character '\'". [Строка: 1; Cтолбец: 186]
"Unexpected character '\'". [Строка: 1; Cтолбец: 182]
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
Вот как сделал :
Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", ".", project.Variables["Directory"].Value+\cms\site_+project.Variables["random_number"].Value, true, false);
Мне выдаёт ошибку всё рамно вида:


вот так попробуйте:

Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", "/", project.Variables["Directory"].Value + "\\cms\\site_" + project.Variables["random_number"].Value, true, false);
 
  • Спасибо
Реакции: Badboy

Badboy

Client
Регистрация
07.02.2014
Сообщения
39
Благодарностей
1
Баллы
8
Сделал.
Вообщем вот этот кусок кода:
Код:
project.Variables["Directory"].Value+\cms\site_+project.Variables["random_number"].Value
сделал иначе,перед исполнением C# поставил замену пути к папке,
выполнение замены: "/" заменять на "\\" и положить результат в одну переменную, в итоге получился код:

Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", ".", project.Variables["zamena"].Value, true, false);
проект начал работать без ошибок, проверил,всё заливает как нужно.
Спасибо всем огромное кто помог.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
Сделал.
Вообщем вот этот кусок кода:
Код:
project.Variables["Directory"].Value+\cms\site_+project.Variables["random_number"].Value
сделал иначе,перед исполнением C# поставил замену пути к папке,
выполнение замены: "/" заменять на "\\" и положить результат в одну переменную, в итоге получился код:

Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", ".", project.Variables["zamena"].Value, true, false);
проект начал работать без ошибок, проверил,всё заливает как нужно.
Спасибо всем огромное кто помог.
ошибка была в том, что статичную часть пути вы не обрамляли кавычками, поэтому выбивало ошибку..
вот так тоже будет работать (с кавычками):

Код:
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", "/", project.Variables["Directory"].Value + "\\cms\\site_" + project.Variables["random_number"].Value, true, false);
естесственно обратные слеши должны быть заранее экранированы внутри переменных (\\)
 
  • Спасибо
Реакции: Badboy

Badboy

Client
Регистрация
07.02.2014
Сообщения
39
Благодарностей
1
Баллы
8
понял,спасибо за обьяснение.
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
Как-то у меня интересно получается, заливаю всё из папки на диске на FTP, т.е. и файлы и вложенные папки с файлами, в результате на хостинге создается структура папок и заливаются файлы в корень и немножко в первую по структуре вложенную папку. И все, типа, действие выполнено успешно. Хотя там файлов еще лить и лить.
Возможно сервер хостинга дает какое-то прерывание заливки? Это фрихостинг. И если так, то как продолжить/восстановить заливку на FTP?
 
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
Как-то у меня интересно получается, заливаю всё из папки на диске на FTP, т.е. и файлы и вложенные папки с файлами, в результате на хостинге создается структура папок и заливается немножко файлов в корень и в первую по структуре вложенную папку. И все, типа, действие выполнено успешно.
Возможно сервер хостинга дает какое-то прерывание заливки? Это фрихостинг. И если так, то как продолжить/восстановить заливку на FTP?
возможно, что ненадежное соединение с хостингером..
можно попробовать разбить передачу файлов на отдельные задачи - сделать список из отдельных объектов и каждую строку списка брать с удалением и отсылать снипетом в цикле (по 1 строке за раз)..
возможно так будет надежнее..
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
ну как на отдельные задачи? если заливку каждого файла делать задачей, то в чем тогда прикол всей затеи "залить все из папки". и файлов так не дохло ~ 5000.
а, если просто всю задачу разбить на крупные блоки, то и также не будет гарантии, что все залилось.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
ну как на отдельные задачи? если заливку каждого файла делать задачей, то в чем тогда прикол всей затеи "залить все из папки". и файлов так не дохло ~ 5000.
а, если просто всю задачу разбить на крупные блоки, то и также не будет гарантии, что все залилось.
5к файлов - да, неслабо..
пока не могу что то еще посоветовать..
возможно что тут требуется более хитрый снипет, с обратной связью как бы, чтобы каждый закачанный файл проверялся на тот факт, что он закачался успешно..
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
5к файлов - да, неслабо..
пока не могу что то еще посоветовать..
возможно что тут требуется более хитрый снипет, с обратной связью как бы, чтобы каждый закачанный файл проверялся на тот факт, что он закачался успешно..
ну да, типа того. и, если нет, то повтор заливки.
 
  • Спасибо
Реакции: LightWood

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
можно конечно собрать все содержимое исходной папки в ZIP архив, залить на хост его и еще 3 маленьких файлика (Kickstart, скрипт распаковки архивов, кусок Джумлы), и обратившись из браузера разархивировать на любом хостинге с PHP.
но это уже другое.
 
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 468
Благодарностей
10 014
Баллы
113
можно конечно собрать все содержимое исходной папки в архив, залить на хост его и еще 3 маленьких файлика "Kickstart" (скрипт распаковки архивов, кусок Джумлы), и обратившись из браузера разархивировать на любом хостинге с PHP.
но это уже другое.
где то валялся однофайловый php-распаковщик..
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
ну тут затык в том, что фришники терпеть не любят большие файлы, и передача архива душевного размера может быть само по себе проблемой.
потому и хотелось бы все-таки иметь возможность "залить всё из папки" с гарантией.
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
Кстати, а почему FileZilla заливает файл размером, например, 50 Мб за ~ 20 сек, а Zenno этот же файл, туда же, ну ОЧЕНЬ долго, и часто вообще может зависнуть и не загрузить?
Ну т.е. как бы совсем по-разному, а протокол-то один, - FTP.
 
Последнее редактирование:

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
792
Баллы
113
очень часто встроеные методы зенопостера оставляют желать лучшего относительно альтернативных вариантов.
попробуй позаливать другими либами
например вот, кусочек кода по синхронизации папок через winscp
http://winscp.net/eng/docs/library_session_synchronizedirectories
я думаю очень удобно будет просто дозалить то, что незалилось если вдруг возникнет ошибка
 
  • Спасибо
Реакции: CSS и xturbofox

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
а как проверить существование файла на сервере и сверить его размер с локальным?
-------
разобрался.
 
Последнее редактирование:

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
очень часто встроеные методы зенопостера оставляют желать лучшего относительно альтернативных вариантов.
попробуй позаливать другими либами
посоветуйте, плиз, какую-нибудь качественную :0)
-----------
ну вот вроде BytesRoad.NetSuit_2_0 ничего
может еще что кто пользует?
 
Последнее редактирование:

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
792
Баллы
113
мне неприходилось использовать сторонние либы для работы с фтп.
да, может быть это хороший вариант: судя по описанию, может работать через прокси.
если вы работаете через прокси может поэтому файлы так медленно заливаются?
 

xturbofox

Client
Регистрация
09.04.2013
Сообщения
34
Благодарностей
4
Баллы
8
да нет, я без прокси. но как-то застревало прям постоянно.
с BytesRoad.NetSuit_2_0 бегает бодрее.

чёт не соображу как права на файлы/папки менять.
 

Mczam

Client
Регистрация
25.08.2017
Сообщения
20
Благодарностей
0
Баллы
1
где то валялся однофайловый php-распаковщик..
подскажи пожалуйста как сделать заливку зип архива в папку с именем этого зип архива? ну и как можно распаковать если не сложно.. ну оч нужно заранее спасибо огромное
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 190
Благодарностей
2 208
Баллы
113
Сложно. Если это шаред-хостинг без SSH-доступа, то тогда только связкой "заливка по FTP" + "распаковка через PHP файл". Если есть SSH, то "заливка по FTP" + "распаковка команды SSH". Как делать второе я намекал в этой теме.
 

Mczam

Client
Регистрация
25.08.2017
Сообщения
20
Благодарностей
0
Баллы
1
Сложно. Если это шаред-хостинг без SSH-доступа, то тогда только связкой "заливка по FTP" + "распаковка через PHP файл". Если есть SSH, то "заливка по FTP" + "распаковка команды SSH". Как делать второе я намекал в этой теме.
я пробовал вот так
ZennoPoster.FtpUploadDirectory(project.Variables["Variable37"].Value, 21, "FTP", project.Variables["Variable39"].Value, "passw0rdsss", "", "/", project.Variables["Directory"].Value + "\\cms\\site_" + project.Variables["random_number"].Value, true, false);
у меня создается новая директория с таким же именем.а мне нужно чтобы именно в существующую заливал. хостинг lepus
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)