Как делают FTP-серверы обычно обрабатывают, переименовывают в файл, которые уже существуют? Таким образом, существующее будет к файлу перезаписано, или я получу ошибку? Есть ли некоторая спецификация о том, как FTP-серверы должны обработать это или являются ею ОС или зависящий от реализации?
vsftpd на Linux, кажется, перезаписывает с FileZilla на Vista, которую я получаю, 550 файлов существуют...
После установки довольно многих FTP-серверов в мое время я могу сказать, что это - конкретный сервер. Некоторые FTP-серверы имеют функцию, где они не передадут 550 ошибок обратно, но вместо этого переименовывать Вашу загрузку на файл 1, файл 2, и так далее. Это довольно удобно для сохранения оригиналов в случае случайной перезаписи.
FTP-сервер, с которым я предпочитаю работать, Чист-FTPd. Это имеет эту функцию с -r
переключатель:
- '-r': Never overwrite existing files. Uploading a file whoose name already exists cause an automatic rename. Files are called xyz, xyz.1, xyz.2, xyz.3, etc.
Это может быть конкретным сервером, хотя обычно старый файл будет просто перезаписан. Существует один большой протест хотя: в зависимости от владения и набора полномочий для файла (и каталог это находится в) файл, который был бы иначе перезаписан, может привести к ошибке, потому что Ваша учетная запись пользователя не имеет корректных прав доступа для удаления/изменения его.
Поведение может также варьироваться между приложениями клиента FTP. Некоторые просто отправят файл, которому Вы говорите это по умолчанию, перезаписывая один не, сервер при необходимости и сервер позволяют, где некоторые могут проверить текущий список каталогов сервера и спросить Вас, если Вы уверены сначала.