Имя: Пароль:
1C
 
Знатоки FTP есть?
0 alxbzm
 
15.10.09
00:33
Пытаюсь подключиться к FTP серверу через FTPСоединение и при выполнении метода Получить() получаю ошибку

Ошибка работы с Интернет:  ftp://xxx.xxx.xxx.xxx:21Transferred a partial file

Анализ последних логов сервера (имеем Filezilla Server) показывает, что сначала клиент запрашивает размер файла (командой SIZE), потом командой RETR пытается его получить и после этого сразу же (без таймаутов - видимо кто-то принудительно разрывает) соединение прекращается.

Гугление по данному вопросу ясности не внесло.

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

В общем, даже не понимаю куда копать и что смотреть. P.S.: передача в пассивном режиме, если это как-то может помочь...
1 Advan
 
15.10.09
01:03
провайдер какой?
2 Advan
 
15.10.09
01:09
было что подобное вылечилось сменой провайдера
3 alxbzm
 
15.10.09
01:20
Да не... Провайдер тут ни при чем.... Связь 100% стабильная - я даже локально пробовал - такая же фигня... думаю, с настройками самой FileZill'ы проблемы... Вопрос в том, как узнать из-за чего именно соединение на передачу данных не получается.

Самое интересное, что родной клиент (FileZilla) коннектится без проблем. Единственное различие, что родной клиент переводит сервак в пассивный режим командой PASV, а вот 1С-ный клиент командой EPSV. Вот думаю здесь может быть собака зарыта.... Еще бы как-нибудь посмотреть логи 1с-ного клиента, но по-моему такая фича не предусмотрена...
4 alxbzm
 
15.10.09
12:28
+(3) - хотя нет - локально все-таки соединяется без проблем. Не могу понять в чем же может быть проблема: файерволы отключены и локально и удаленно.

В чем же разница между локальным и удаленным подключением? Проводил эксперименты на двух компьютерах, находящихся в одной подсети. Локально подключался не на localhost, а на внешний сетевой адрес компьютера - все работает. FileZilla Server и локально и удаленно установлен с идентичными настройками.

В общем, помощь в данном вопросе все еще актуальна. Просто ну очень не хочется переходить на ВК в таком "штатном" вопросе.
5 Fragster
 
гуру
15.10.09
12:33
а там пассивный/активный режим переключать можно? попробуй!
6 alxbzm
 
15.10.09
12:46
(5) переключить можно везде (и в сервере и на клиенте), только активный режим мне не нужен - в рабочем использовании у меня есть один сервер, который из-за прокси должен работать (и кстати нормально работает, вот только не с встроенным клиентом 1С v8), поэтому этот режим я не тестировал - пытаюсь все-таки настроить пассивный режим. Кстати, компонента DialMail.dll в пассивном режиме тоже нормально работает.

Мне сам смысл ошибке не понятен - я бы еще понял бы если бы какие-то порты были бы перекрыты - соединение по таймауту отваливалось бы, так тут сразу соединение обрывается, причем большое подозрение что рвет его клиент 1С.

Вот это пишет сервер в своем логе и на этом соединение заканчивается:

(000046) 15.10.2009 12:31:18 - 000 (xxx.xxx.xxx.xxx)> RETR Message.zip
(000046) 15.10.2009 12:31:18 - 000 (xxx.xxx.xxx.xxx)> 150 Connection accepted
(000046) 15.10.2009 12:31:18 - 000 (xxx.xxx.xxx.xxx)> 426 Connection closed; transfer aborted.
7 Advan
 
15.10.09
12:51
А провайдер то у тебя всетаки какой? У меня была такая проблема с мегафоном, решилось созданием VPN соединения.
8 alxbzm
 
15.10.09
12:52
(7) какой-какой - локальная сеть у меня провайдер )))) уже по инету ниче не тестирую - пытаюсь хотя бы в локалке поднять.
9 Advan
 
15.10.09
12:55
(8)Тогда хрен знает
Попробуй виндовский FTP и поменяй порт
1с чаще зависает чем рвет соединение - с помощью проводника пускает на FTP? 1с использует стандартные виндовские библиотеки
10 Advan
 
15.10.09
12:56
к томуже попробуй на другой комп FTP перенести - может просто память/жесткий, сетевуха глючат
11 Advan
 
15.10.09
12:57
и еще права доступа?
12 alxbzm
 
15.10.09
13:02
ftp.exe не поддерживает пассивный режим. Кстати, через проводник взлетело... Блин - неужели очередная недокументированная багофича 1Це...
13 Advan
 
15.10.09
13:04
(12)А вот это уже странно - 1с использует теже библиотеки что и винда.
А движек то у тебя какой?
14 Advan
 
15.10.09
13:04
и винда какая?
15 alxbzm
 
15.10.09
13:05
(14) На сервере W2K3, локально WinXp
16 alxbzm
 
15.10.09
13:06
(13) движок 8.1.13.41
17 alxbzm
 
15.10.09
13:11
+(12) Проводник тоже использует команду PASV в отличие от 1С, которая использует EPSV. Все-таки подозреваю что дело в этой команде. Возможно, FileZilla некорректно работает с этой командой. RFC никто не сможет расшифровать по поводу как должна работать EPSV и в чем отличие от PASV? ))))
18 alxbzm
 
15.10.09
13:11
(17) *сможет = поможет )))))
19 sidalexsandr
 
15.10.09
13:15
alxbzm товарищ а ты не пробовал обновить ftp сервер свой на последнюю версию. Ведь на то и обновления чтобы исправлять баги программ.
20 alxbzm
 
15.10.09
13:25
(19) - не поверишь - первое что попробовал. Установил 0.9.33. Свежее на данный момент нет.

Предложите бесплатную альтернативу - буду очень признателен - попробую на ней.
Основная теорема систематики: Новые системы плодят новые проблемы.