Node.js имеет действительно хорошие модули, которые могут обрабатывать сжатие и шифрование.
Документы также содержат примеры использования этих модулей, поэтому обязательно проверьте их
Я думаю, что идеальный путь был бы, имеют папку "Incoming", которой дали необходимые полномочия для ASP.NET, чтобы сохранить файлы. Я никогда не встречался с ситуацией, где файлы остаются заблокированными даже после вызова SaveAs
на управлении FileUpload.
Обратите внимание, что управление FileUpload не загружает файл, пока Вы не звоните SaveAs
и это - когда файл сохраняется к диску на сервере. Это, кажется, сдерживается, весь файл удовлетворяет HttpInputStream
, который записан в диск когда SaveAs
метод называют.
Файл (файлы) должен затем быть свободен быть просканированным Вашим приложением AV. В случае, если ошибка происходит, можно дать соответствующую обратную связь пользователю.
Если Вы серьезно относитесь к безопасности, другая связанная подсказка должна удостовериться папка, к которой Вы сохранили файлы, выше webroot, таким образом, пользователи не могут непосредственно получить доступ к нему всегда. Можно все еще дать им способность удалить их загруженные файлы с некоторой работой базы данных, т.е. сохранить местоположение и удостовериться, что каждый файл исключительно называют (если пользователи проходят проверку подлинности, я просто сохраняю имя файла как USERNAME.XYZ, где XYZ является расширением файла.
Вы используете управление сервером ASP FileUpload?
Раз так это загружается в память серверов, пока Вы не делаете что-то с ним.
Это из MSDN;
Нет никакого свойственного ограничения на то, где можно сохранить загруженные файлы. Однако, чтобы сохранить файл, процесс ASP.NET должен иметь разрешение создать файлы в месте, которое Вы указываете. Кроме того, Ваше приложение могло бы быть настроено для требования полного пути (не относительный путь) для того, чтобы сохранить файл, который является мерами безопасности.
Точно так же, как Cerebrus я скажу Вам, что управление UploadFile ничего НЕ запишет в дисковод, если Вы не скажете это.
Вот фактическая информация о том, как ASP.NET обрабатывает файлы. Это зависит от версии, но 2.0 и все последующие версии записывают загрузки на диск, прежде чем вы получите возможность их обработать. Приведенные выше ответы на самом деле неверны - ASP.NET выше 2. 0 запишет файл на диск. Если подумать, загрузка загрузки в память откроет вам дыру для DDOS, поскольку большие файлы будут занимать все больше памяти сервера. По версии, вот как действует ASP.NET:
ASP.NET 1.0 и 1.1 загрузили весь запрос в память, прежде чем вы могли получить к нему доступ. Это означало, что большие файлы потенциально могли заполнить всю память, вызывая исключения и в противном случае приводя к остановке сервера.
ASP.NET 2.0 представил схему дискового кэширования для загрузки, снова задерживая загрузку и обрабатывая ее до того, как код клиента сможет ее обработать. Доступ к временной папке можно получить следующим образом:
string uploadFolder = Path.Combine (HttpRuntime.CodegenDirInternal, «uploads»);
Начиная с ASP.NET 4.0, имя свойства, указанное выше, - HttpRuntime.CodegenDir:
строка uploadFolder = Путь.