Telerik Rad асинхронный контроль загрузки файлов работает хорошо локально, но не на сервере

Я использую элемент управления RadAsyncUpload от Telerik для загрузки файла на сервер. Он хорошо работает локально (на локальном хосте), но не на сервере. Что я упустил?

(Когда я выбираю файл для загрузки, точка становится красной, а не зеленой)

2 ответа

У меня было такое же поведение, и это была проблема с разрешениями папки.

Еще один симптом в этом случае, консоль Chrome DevTools показала следующую ошибку при попытке загрузить файл:

  • Код ошибки HTTP 500

Существует временная папка, в которой RadAsyncUpload временно сохраняет файлы. Если вы не определите свойство TemporaryFolder в элементе управления RadAsyncUpload, значение по умолчанию будет в вашей папке App_Data\RadUploadTemp. Если у IIS_USERS нет прав на запись в эту папку, загрузка не может сохранить файл здесь. Он будет работать на вашем локальном хосте, потому что у вас есть права на запись в эту папку. Вот как дать необходимые разрешения.

  1. Щелкните правой кнопкой мыши папку App_Data\RadUploadTemp на сервере и выберите свойства
  2. Выберите вкладку Безопасность
  3. Нажмите кнопку "Изменить..."
  4. В разделе "Группы или имена пользователей:" выберите IIS_USERS.
  5. В разделе "Разрешения для IIS_USERS" установите флажок " Запись" в столбце " Разрешить".

Примечание. Это был IIS 7 на Windows 2008 R2 Server.

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

Вы можете прикрепить к событиям OnClientValidationFailed и OnClientFileUploadFailed и проверить, что именно является ошибкой, и исправить ее.

Статья " Устранение неполадок" предлагает дополнительную информацию о различных ошибках и способах их устранения.

Другие вопросы по тегам