Можно ли загрузить непосредственно на удаленный сервер с использованием SFTP на ASP.net MVC - PullRequest
0 голосов
/ 31 октября 2009

В настоящее время я занимаюсь разработкой чего-то, используя asp.net MVC, я все еще не очень разбираюсь в этом, поэтому, пожалуйста, помогите мне.

У меня есть форма для загрузки видео пользователем. В настоящее время идеальная концепция для загрузки на удаленный сервер - это загрузить его на текущий сервер, а затем использовать FTP для отправки на удаленный сервер.

Для меня это не совсем быстро, так как вы должны загрузить на текущий сервер (время x1), а затем текущий сервер переместить на новый сервер (время x2), так что это в два раза больше времени.

Таким образом, моя идея состоит в том, чтобы пользователь загружал его на текущий сервер, а WHILE пользователь загружает, текущий сервер добавляет файл в БД, а также одновременно отправляет файл на удаленный сервер. используя SFTP ...

это возможно и есть ли дыра в безопасности в этой концепции?

Большое спасибо

Ответы [ 3 ]

1 голос
/ 03 ноября 2009

Я бы рекомендовал использовать NULL Ftp Server для тестирования. Если вы подключитесь к нему с помощью клиента Filezilla, вы заметите, что он предлагает пользователю принять ключ ssl. Он делает это так же, как putty.exe или любой SSH-клиент.

Итак, ваш код просто должен принять SSL-соединение, а с этого момента это просто обычные команды FTP.

Программно, я не знаю, как принять сертификат, и поэтому все, что я могу предложить, это настроить пакетный файл для запуска клиента Putty sftp и push-файлов, а затем сделать так, чтобы ваш код вызывал пакетный файл. Я почти уверен, что ASP поддерживает вызов командного файла.

1 голос
/ 10 ноября 2009

У меня была другая идея. Вы можете купить версию WinSCP за 30 долларов, и она будет синхронизировать локальный каталог с удаленным каталогом SFTP. Это избавило бы вас от необходимости программировать его.

0 голосов
/ 02 ноября 2009

Вы можете загрузить напрямую в SFTP с помощью Java-апплета . Эти апплеты имеют хуки, чтобы вы (приложение ASP.NET MVC) знали, когда загрузка будет завершена.

...