У меня возникает следующая ошибка на моем сайте на удаленном хостинге. Я развернул его в первый раз, и код просто работает как очарование на моей локальной машине. Это похоже на проблему с разрешением, и мне не нужно беспокоиться о разрешении, поскольку я загружаю его в папку в каталоге приложения. Мне не нужно предоставлять специальное разрешение на этот обряд? Поэтому я попытался связаться с моим хостинг-провайдером, и они сказали, что с ними нет ничего общего. Как правило, есть параметр в учетной записи веб-хостинга, где я могу дать разрешение на приложение или как решить эту проблему? Нужно ли мне олицетворять пользователя? Мне не следует. Папка существует на веб-сайте, и на сайте есть и другие песни. Нет проблем с доступом к ним. Надеюсь, кто-то может указать мне, что произойдет. Я только что купил удаленный хостинг, и я не понимаю, как они работают.Ошибка загрузки файла на удаленный хостинг vb.net
Большое спасибо.
Мой код загрузки
If fuSong.HasFile = True Then
Dim conString As String = ConfigurationManager.ConnectionStrings("ConnectionString").ConnectionString
Dim con As New SqlConnection(conString)
Dim location As String = Path.Combine(Server.MapPath("~/Uploads"), fuSong.FileName)
Dim username As String = Page.User.Identity.Name
Dim Insertcommand As New SqlCommand()
Dim prsongname As New SqlParameter("@songname", SqlDbType.NVarChar)
prsongname.DbType = DbType.[String]
prsongname.Value = name
Insertcommand.Parameters.Add(prsongname)
Dim prusername As New SqlParameter("@username", SqlDbType.NVarChar)
prusername.DbType = DbType.[String]
prusername.Value = username
Insertcommand.Parameters.Add(prusername)
Insertcommand.CommandText = "INSERT INTO Songs(Song_Name, UserName) VALUES (@songname, @username)"
Insertcommand.Connection = con
con.Open()
Insertcommand.ExecuteNonQuery()
fuSong.SaveAs(location) ''''''''' I guess error is here
End If
Ошибка сервера в приложении '/'.
Доступ к пути 'D: \ Хостинг \ 9078263 \ html \ Uploads \ Sleep Away.mp3' запрещен.
Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.
Сведения об исключении: System.UnauthorizedAccessException: Доступ к пути «D: \ Хостинг \ 9078263 \ html \ Uploads \ Sleep Away.mp3» отклонен.
ASP.NET не имеет права доступа к запрашиваемому ресурсу. Рассмотрите возможность предоставления прав доступа ресурсу к идентификатору запроса ASP.NET. ASP.NET имеет базовый идентификатор процесса (обычно {MACHINE} \ ASPNET на IIS 5 или сетевую службу на IIS 6 и IIS 7 и настроенный идентификатор пула приложений в IIS 7.5), который используется, если приложение не выдаёт себя за изображение. Если приложение выдаст себя, идентификатор будет анонимным пользователем (обычно IUSR_MACHINENAME) или пользователем, прошедшим проверку подлинности.
Чтобы предоставить ASP.NET доступ к файлу, щелкните правой кнопкой мыши файл в Проводнике, выберите «Свойства» и выберите вкладку «Безопасность». Нажмите «Добавить», чтобы добавить соответствующего пользователя или группу. Выделите учетную запись ASP.NET и установите флажки для нужного доступа.
Источник ошибки:
Необработанное исключение при выполнении текущего веб-запроса. Информация о происхождении и местоположении исключения может быть идентифицирована с использованием следа стека исключений ниже.
Трассировка стека:
[UnauthorizedAccessException: Доступ к пути 'D: \ хостинг \ 9078263 \ HTML \ загрузками \ Sleep Away.mp3' отрицается.] System.IO .__ Error.WinIOError (Int32 ERRORCODE , String maybeFullPath) +9717806 System.IO.FileStream.Init (String path, FileMode mode, FileAccess access, права Int32, логическое использованиеRights, общий доступ к FileShare, параметры Int32 bufferSize, FileOptions, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath) +1142 System.IO.FileStream..ctor (String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, параметры FileOptions, String msgPath, Boolean bFromProxy) +78 Sys tem.IO.FileStream..ctor (String path, FileMode mode) +71 System.Web.HttpPostedFile.SaveAs (String filename) +99 .btnUpload_Click (отправитель объекта, EventArgs е) +1231
[Исключение: Ошибка данных: Запись не была добавлена] profile.btnUpload_Click (отправитель объекта, EventArgs е) +1374 System.Web.UI.WebControls.Button.OnClick (EventArgs e) +118 System.Web.UI.WebControls.Button.RaisePostBackEvent (String eventArgument) +112 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent (String eventArgument) +10 System.Web.UI.Page.RaisePostBackEvent (IPostBackEventHandler SourceControl, String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent (NameValueCollection PostData) +36 System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint , Boolean includeStagesAfterAsyncPoint) +5563
Не забудьте отметить ответ для других пользователей. :) – ianbailey