23.05.19 — 13:45
Проблема следующая. Долгое время в базе 1с работало чтение файлов с ftp (дописана обработка) из вложенной папки
Доступ по логину и паролю, соединение незащищенное, не поддерживает FTP через TLS
Внезапно обработка перестала работать по причине: Ошибка аутентификации при доступе к ресурсу: ftp://имяресурса.ru:21 Access denied to remote resource
На стороне 1с ничего не менялось
Пробовала — по фтп сейчас могу получить доступ только в корневую папку FTP , дальше — Access denied
Через filezilla или IE захожу в нужные подчиненные папки, права на папки 777, на файлы 666
Админы ftp логов доступа к нему не ведут и не планируют, и заставить их это делать не получится, да и вообще, молчат как партизаны.
Вопрос. Что могло случиться и что технически можно сделать для обхода проблемы?
1 — 23.05.19 — 13:45
1С:Предприятие 8.3 (8.3.5.1517)
2 — 23.05.19 — 13:58
Сменить такой FTP или поднять свой.
3 — 23.05.19 — 14:03
(2) Невозможно, ftp у контрагента, и такие данные никто больше не предоставляет, а они критичны для работы организации.
Временно через браузер всё руками копируется на наш сервер и потом загружается оттуда, но это временно и нужно нормальное техническое решение.
Вопрос был про технические способы.
4 — 23.05.19 — 14:07
> такие данные никто больше не предоставляет, а они критичны для работы организации
Вот это настоящая проблема, не техническая, и решать ее нужно соответствующе.
А так, если через WinSCP работает, то его можно заскриптовать для перекладывания на свой сервер. А также curl, wget, aria2 и другие.
5 — 23.05.19 — 14:09
(4) по п.1 — нерешаемо средствами организации.)
по п.2 — спасибо.
6 — 23.05.19 — 14:12
Да, еще lftp, но это вообще монстр-комбайн. Разобраться сложно, но может всё.
7 — 23.05.19 — 14:17
для синхронизации папок средствами ftp очень хорошая штука ncftp (https://ncftp.com/ncftp/). Просто настроить на каком-нибудь компе задачку, чтобы он раз в сколько-то время ncftpget запускал для синхронизации ftp-шной удаленной папки со своей. Файлы сверяет, лишний раз не качает, если уже были скачаны. Очень удобно.
8 — 23.05.19 — 14:27
(7) Спасибо
9 — 23.05.19 — 14:49
(0)Зачем вообще FTP если есть например https://syncthing.net/ синхронизация каталога, хоть на 20 компах )))
10 — 23.05.19 — 15:07
(0) Нанять программиста уже пробовали?
11 — 23.05.19 — 15:08
(10)+ Это не стеб, если можно скачать вручную с ftp помимо 1С то кто мешает воспользоваться кучей способов и автоматизировать это скачивание чем то внешним?
12 — 23.05.19 — 15:15
(10) Пока в теме не обозначился ни один специалист, знакомый с данной проблемой именно в том виде, как она обозначена в СТ. Кого нанимать?
(11) Под костыли в виде дополнительных скачиваний на наш сервер уже всё сделано до данной темы. Хотелось бы послушать именно знающих тонкости работы ftp-1с. Но увы. Их нет.
А костылетворцев у нас и своих хватает.
13 — 23.05.19 — 15:24
(12) Ну вам уже написали про ncftp в (7) которые юзали еще по времена 1С 7.7
http://security-corp.org/administration/sys_admin/12576-1s-77-organizaciya-avtoobmena-cherez-ftp.html
Но я не вижу проблем использовать что угодно, начиная от ВК до написания своей софтины или веб-сервиса который сделает что угодно.
Например есть прекрасная «Ъ» от Использование классов .Net в 1С для новичков
Или можно взять NodeJS или Golang или банальный C# (или прочее что знает программист которого вы наняли) и набросать простую штуку с которой уже любая 1С сможет работать штатно, через http соединение или еще как.
14 — 23.05.19 — 15:30
(13) Прежде чем что-то писать, нужно понять, можно ли сделать как было без затрат xx человеко-часов. Работало же оно 5 лет и не жужжало.
15 — 23.05.19 — 15:36
(14) А вы пробовали штатную работу с ftp из вашей 1С слегка подправить попробовать и узнать что выйдет?
Ну там пассивный режим работы или таймаут? А может нечто не то с авторизацией например регистр логина или еще что.
Может надо текущий каталог менять правильно перед тем как нечто на ftp делать.
16 — 23.05.19 — 15:37
(15)+ Короче имхается у вас была слегка кривая работа с ftp сервером из 1С.
И когда там у контрагентов сервер перевели на нормальный, то ваша 1С перестала с ним уметь работать.
Переписывайте правильно. Наймите программиста уже.
17 — 23.05.19 — 15:40
(15) Пробовали, соединение само работает, в корневой каталог фтп-пользователь логинится.
Но во вложенные каталоги уже нет.
Проблем нанять кого-то нет от слова совсем. Пусть придёт, блеснёт знанием как правильно и почему. Пока предлагаются костыли и балабольство. 🙂
18 — 23.05.19 — 15:45
как по мне — ftp-клиент в 1С очень так себе. Поэтому прямой способ как раз утащить к себе админскими средствами, а дальше с этой папкой делать че хошь уже у себя дома, а не на чужом сервере.
19 — 23.05.19 — 15:47
(18) Нормальный там клиент, со своими тараканами и надо готовить уметь.
20 — 23.05.19 — 15:47
(17) УстановитьТекущийКаталог(<ИмяКаталога>) не отрабатывает на правильные пути для вложенных?
21 — 23.05.19 — 15:48
(19) нормальный — это когда без тараканов. А ветки про косяки встроенного FTP от 1С тут появляются регулярно — то одно не может, то другое
22 — 23.05.19 — 15:48
(20)+ Или может надо ЗащищенноеСоединениеOpenSSL ?
23 — 23.05.19 — 15:48
(21) Оно еще в разных версиях платформы по разному ))
24 — 23.05.19 — 15:48
(18) Согласна. Но это прям на самый-самый крайний случай вариант.
Потому что + 1 промежуточный обмен данными всегда дополнительный гемор.
25 — 23.05.19 — 15:48
вот ncftp — это нормальный. Работает уже под 30 лет и голову не греет
26 — 23.05.19 — 15:49
(20) Для вложенных — нет. Для корневого — да.
27 — 23.05.19 — 15:51
(22) Если оно не нужно для корневого, то может быть нужно для вложенных?
В любом случае, пробовала, не завелось.
28 — 23.05.19 — 16:12
(27) Код покажите, у меня есть подозрения что вы что то не то делаете банально
29 — 23.05.19 — 16:40
(28)
Подключение
——————————
попытка
Соединение = новый FTPСоединение(
ФтпДанные.ФтпСервер,
21,
ФтпДанные.Логин,
ФтпДанные.Пароль,
Неопределено,
истина,0,Неопределено,
);
исключение
Сообщить(ОписаниеОшибки());
Возврат Неопределено;
КонецПопытки;
———————————-
Что менялось методом пляски с бубном:
номер порта указывался явно или не указывался (в первоначальном варианте, отработавшим 5 лет, не был указан, но работает и так и так)
Прокси — на моём домашнем его точно нет, менялось только пустой параметр/ неопределено
Пассивное соединение: пробовалось как истина-ложь, работает только истина
Защищенное соединение: пробовалось как неопределено или ЗащищенноеСоединениеOpenSSL, работает только неопределено
Таймаут: пробовался 0 и 30, разницы нет
Этим же кодом пробовала подключаться к тестовому
ФтпСервер = «test.rebex.net»;
Логин = «demo»;
Пароль = «password»;
НО там только корень и 1 файл, вложенных нет, корневой файл читает
Что в работе: попросила админа рабочего фтп положить файл в корень, проверю чтение
Чтение данных
———————-
Попытка
Соединение = ПодключитьФТП();
Путь = ФтпДанные.ПутьКПапке0;//корневой каталог
Соединение.УстановитьТекущийКаталог(Путь);
//файлы = Соединение.НайтиФайлы(Путь,Маска);
сообщить («ок «+ Путь);
Путь = ФтпДанные.ПутьКПапке1;//1 уровень
Соединение.УстановитьТекущийКаталог(Путь);
//файлы = Соединение.НайтиФайлы(Путь,Маска);
сообщить («ок «+ Путь);
Путь = ФтпДанные.ПутьКПапке;//2 уровень
Соединение.УстановитьТекущийКаталог(Путь);
//файлы = Соединение.НайтиФайлы(Путь,Маска);
сообщить («ок «+ Путь);
исключение
ЗаписьЖурналаРегистрации(«фтп»,,,,ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()),);
КонецПопытки;
—-
Тут только на верхний уровень заходит и всё, в папки уже нет.
——
пути 1,2,3 уровень такого вида
———————-
ПутьКПапке0 = «/»;
ПутьКПапке1 = «/ftpNNN/»;
ПутьКПапке = «/ftpNNN/csv/»;
30 — 23.05.19 — 18:09
Можно посниффить сеть и получить лог FTP сессии. Может что-то прояснится.
31 — 23.05.19 — 18:43
А что возвращает разделитель пути?
может у них фтп на винде и наклон нужен в другую сторону?
32 — 23.05.19 — 18:44
там в коде фигня.
у фтп нет путькпапке1 и т.п.
срочно переписать!
33 — 23.05.19 — 18:46
и это,некоторын фтп не ели черточку в конце.
34 — 23.05.19 — 18:48
(30) Подкину идею админам, мож заморочатся. В этом вопросе — у меня лапки.
35 — 23.05.19 — 18:49
Имхо у вас проблема не с УстановитьТекущийКаталог
А с НайтиФайлы
36 — 23.05.19 — 18:50
(31) На прошлой неделе всё работало. Навряд ли они ОС сменили за это время, во всяком случае, утверждают, что не меняли ничего.
(32) Всё норм в коде. Это структура.
(33) Неделю назад ел.
37 — 23.05.19 — 18:51
(35) И с тем и с тем одинаковые проблемы.
38 — 23.05.19 — 18:53
А про регистрозависимость вы в курсе же на линуксе?
39 — 23.05.19 — 18:53
Елена Троянская
40 — 23.05.19 — 19:04
(38) Вы — гений.
Знаю, но не додумалась, что дело может быть в этом. Поскольку админы поставщика клялись, что ничего не меняли. Ну так, с винды на линукс переехали, видимо втихаря.
Завелось. Спасибо.
Ошибка аутентификации при доступе к ресурсу: ftp://xxx:xxx Access denied to remote resource при выполнении Получить() файлы
Описание ошибки:
Установлено FTP-соединение, но при выполнении метода Получить(<Источник>, <ИмяВыходногоФайла>) возникает ошибка: Ошибка аутентификации при доступе к ресурсу: ftp://xxx:xxx Access denied to remote resource
Найденные решения:
Зачастую на такую ошибку на форумах можно встреть ответ, что FTP-соединение 1C:Предприятие работает не стабильно, неправильно, не для всех серверов подходит.
Чаще всего такие ответы возникают от нежелания подробно разобраться в правильности написания кода. Если стандартными средствами ftp-соединение устанавливается без ошибок, значит и работать с ним можно скорее всего в полной мере. Учитываем важные факторы: чтобы были права на папки и файлы для пользователя при ftp-подключении, и чтобы на сервере (если используем регламентное задание) или на клиентском компьютере, откуда выполняем подключение , были права на установку ftp-соединения. Т.е. учитываем обстоятельсва от 1С никак не зависящие. При использовании Получить(<Источник>, <ИмяВыходногоФайла>) нужно внимательно отнестись к тому, что передается первым параметром <Источник> — это должна быть строка к файлу уже на сервере, т.е не должна, например передаваться строка типа «ftp://ftp_сервер/нужный_каталог/файл», а должна передаваться строка-путь к файлу уже на самом сервере, т.е. в продолжение примера: «/нужный_каталог/файл». Т.е. сразу «/» и имя файла или путь с именем файла в зависимости от обстоятельств. С параметром <ИмяВыходногоФайла> — все проще — строка-путь к файлу полностью, например «C:мой_каталогмой_файл».
Более конструктивных решений в интернете не нашел. Если Вам удалось решить эту проблему или есть полезная информация по этой проблеме, то Ваше рашение будет добавлено на сайт со ссылкой на Ваш сайт или с сохранением авторства:
Оцените, помогло ли Вам предоставленное описание решения ошибки?


© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
07-06-2014
Журавлев А.С.
(www.azhur-c.ru)
- Главная
- —
- Форум
- —
- ТЕХПОДДЕРЖКА
- —
- БОНЛИОН — Бонусная система для 1С
- —
- Обмен по FTP
|
vep Пользователь Сообщений: 7 |
Помогите, пожалуйста. Не можем настроить выгрузку файлов обмена по ftp. Соединение проверяем — все нормально. Каталог на сервере где сайт прописан. Но файл выгрузки в папку на сайт не сохраняется. В проводнике Windows или Total Commander — все нормально ровно с теми же настройками. Все соединяется и прописанный в поле Каталог путь отрабатывает. |
|
покажите скрин настроек в 1С |
|
|
vep Пользователь Сообщений: 7 |
#3
28.06.2021 09:19:57
https://yadi.sk/i/nFJ51v5kDjfrrQ |
||
|
вы похоже указываете лишние папки на каталог FTP поэкспериментируйте разными вариантами Пример как должно быть |
|
|
vep Пользователь Сообщений: 7 |
#5
28.06.2021 10:07:29
Мы эксперементировали уже по-всякому. Не работает. Без слэшей был последний вариант потому что в прилагаемой инструкции на скриншоте именно так прописано. |
||
|
vep Пользователь Сообщений: 7 |
#6
28.06.2021 10:08:23
Попробую. Но если смотреть в ftp-клиенте, то путь к папке именно такой как на скриншоте. |
||
|
vep Пользователь Сообщений: 7 |
С урезанным адресом выдает ошибку: Ошибка при соединении с FTP : /upload/1c_exchange_bonuses/ ! {ОбщийМодуль.APPLIX_RU_СМ_FTP.Модуль(76)}: Ошибка при вызове метода контекста (НайтиФайлы): Ошибка аутентификации при доступе к ресурсу: ftp://magellanbooks.ru:21 Access denied to remote resource |
|
пришлите доступ к вашему ftp на support@applix.ru в письме укажиет ссылку на эту тему |
|
|
vep Пользователь Сообщений: 7 |
#9
30.06.2021 12:37:46 Я уже сам проверил. Следующий код с использованием вышеуказанных параметров отлично работает:
Так что проблема точно в вашем закрытом модуле. К тому же попутно нашел ещё один баг. В коде команды «проверить соединение» в нижеприведенной строке отсутствует параметр «ПассивноеСоединение» из-за чего соединение проверяется минуты две. Возможно и в закрытом модуле похожие огрехи имеются. Проверьте.
Изменено: vep — 30.06.2021 12:38:57 |
||||
|
Александр Носов Администратор Сообщений: 359 |
#10
22.07.2021 15:00:54 Работа в FTP переведена на служебный модуль. Обновление уже можно заказать, отправьте запрос на наш email |
ПОСЛЕДНИЕ СООБЩЕНИЯ
Сейчас на форуме (гостей: 2)
Всего зарегистрированных пользователей: 2100
Приняло участие в обсуждении: 356
Всего тем: 779
Проблема в том что кода запускается обмен 1с выдает ошибку: Ошибка при вызове метода контекста (Получить): Ошибка аутентификации при доступе к ресурсу: обмен проходит тогда когда я несколько раз потыкаю на кнопку выполнить и уже к 4-5 попытки он обменивается данными, с интернетом все норм с FTP тоже в чем дело помогите люди добрые ))!
отказаться от фтп в пользу других способов есть возможность? если нет то сделать/поднять промежуточный фтп клиент (для фтп сервера) и веб-сервер (для 1С) где то еще отдельно
Пассивный режим на ФТП включи…
я бы рад отказаться но руководство против ! поэтому приходиться довольствоваться тем что есть , помогите кто знает пжл !!!)
Пассивный включал также !
охренеть какое у Вас «грамотное» руководство
«включал» говорит о том, что ты его выключил. А зря.
но судя по форме и содержанию постов ТС (сорри если что не так), проблема в днк и как следствие в коде — и тогда руководство совершенно право
ну вот простейше-тупейший вариант сделать циклу… чтобы нажал «обмен» и оно стучалось с разными интервалами — пыталось приконнектиться и скачать/закачать как будто юзер сам кнопку нажимает «я несколько раз потыкаю на кнопку выполнить»
DNS сервер подбери другой
+ при этом писало: 1-я попытка…2-я попытка… и настройка кол-ва попыток, после которых стопорится с «не шмогла»
пробуй к фтп коннектится по айпи
про попытки не чего не писала я сам просто пытался его запустить только после 4-5 попытки он обменивается , и как dns может влиять ?
днс тут не виноват, засовывай в попытки в цикле, а таймаут ожидания соединения сделай поменьше, если это возможно. Если за 1-3с не соединилось с фтп, то уже не соединится на 99%
Тэги:
Комментарии доступны только авторизированным пользователям