yar229 / WebDavMailRuCloud

WebDAV cloud.mail.ru ...& Yandex.Disk | WebDAV Облако Mail.Ru Сетевой Диск
MIT License
485 stars 58 forks source link

Forbiden error when uploading mailru #207

Closed slaxor505 closed 3 years ago

slaxor505 commented 3 years ago

Привет!

У меня 2 аккаунта облако.майл.ру и с некоторого времени у меня в обоих следующая ошибка.

2020-10-17 00:42:51 | stdout | [5]: Cache hit: /math_lessons
2020-10-17 00:42:51 | stdout | [21]: Cache hit: /
2020-10-17 00:42:51 | stdout | [12]: Cache hit: /math_lessons
2020-10-17 00:42:51 | stdout | [12]: Cache hit: /math_lessons
2020-10-17 00:42:51 | stdout | [12]: PUT:http://localhost:8010/math_lessons/00000079.jpg:localhost:8011 - Start processing
2020-10-17 00:42:50 | stdout | at NWebDav.Server.WebDavDispatcher.DispatchRequestAsync(IHttpContext httpContext)
2020-10-17 00:42:50 | stdout | at NWebDav.Server.Handlers.PutHandler.HandleRequestAsync(IHttpContext httpContext, IStore store)
2020-10-17 00:42:50 | stdout | at YaR.Clouds.WebDavStore.StoreBase.LocalStoreItem.UploadFromStreamAsync(IHttpContext httpContext, Stream inputStream)
2020-10-17 00:42:50 | stdout | at System.IO.Stream.Close()
2020-10-17 00:42:50 | stdout | at YaR.Clouds.Streams.SplittedUploadStream.Dispose(Boolean disposing)
2020-10-17 00:42:50 | stdout | at System.IO.Stream.Close()
2020-10-17 00:42:50 | stdout | at YaR.Clouds.Base.Streams.UploadStreamHttpClient.Dispose(Boolean disposing)
2020-10-17 00:42:50 | stdout | System.Exception: Cannot upload file, status Forbidden
2020-10-17 00:42:50 | stdout | [5]: Unexpected exception while handling request (method=PUT, url=http://localhost:8010/math_lessons/00000079.jpg, source=localhost:8011
...

Дальше этой ошибки загрузка не продолжается и в конце концов процесс WebDavMailRuCloud зависает.

2020-10-16 00:38:39 | stdout | [10]: Items cache clean: removed 22 expired items
2020-10-16 00:33:39 | stdout | [27]: Items cache clean: removed 39 expired items
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Streams.UploadStreamHttpClient.<Initialize>b__6_0()
2020-10-16 00:29:31 | stdout | at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
2020-10-16 00:29:31 | stdout | --- End of inner exception stack trace ---
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Repos.MailRuCloud.MailRuBaseRepo.DoUpload(HttpClient client, PushStreamContent content, File file)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
2020-10-16 00:29:31 | stdout | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpConnectionPool.SendWithNtConnectionAuthAsync(HttpConnection connection, HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpConnection.SendRequestContentAsync(HttpRequestMessage request, HttpContentWriteStream stream, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpContent.CopyToAsyncCore(ValueTask copyTask)
2020-10-16 00:29:31 | stdout | --- End of inner exception stack trace ---
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpContent.CopyToAsyncCore(ValueTask copyTask)
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Streams.PushStreamContent.SerializeToStreamAsync(Stream stream, TransportContext context)
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Streams.PushStreamContent.<>c__DisplayClass6_0.<Taskify>b__0(Stream stream, HttpContent content, TransportContext transportContext)
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Streams.UploadStreamHttpClient.<Initialize>b__6_1(Stream stream, HttpContent httpContent, TransportContext arg3)
2020-10-16 00:29:31 | stdout | at System.IO.Stream.CopyTo(Stream destination)
2020-10-16 00:29:31 | stdout | at System.IO.Stream.CopyTo(Stream destination, Int32 bufferSize)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpBaseStream.Write(Byte[] buffer, Int32 offset, Int32 count)
2020-10-16 00:29:31 | stdout | at System.Net.Http.HttpConnection.WriteAsync(ReadOnlyMemory`1 source)
2020-10-16 00:29:31 | stdout | at System.Net.Security.SslStream.WriteAsyncInternal[TWriteAdapter](TWriteAdapter writeAdapter, ReadOnlyMemory`1 buffer)
2020-10-16 00:29:31 | stdout | at System.Net.Security.SslStream.WriteAsyncChunked[TWriteAdapter](TWriteAdapter writeAdapter, ReadOnlyMemory`1 buffer)
2020-10-16 00:29:31 | stdout | at System.Net.Security.SslStream.<WriteSingleChunk>g__CompleteAsync\|210_1[TWriteAdapter](ValueTask writeTask, Byte[] bufferToReturn)
2020-10-16 00:29:31 | stdout | at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
2020-10-16 00:29:31 | stdout | --- End of inner exception stack trace ---
2020-10-16 00:29:31 | stdout | ---> System.Net.Sockets.SocketException (104): Connection reset by peer
2020-10-16 00:29:31 | stdout | ---> System.IO.IOException: Unable to read data from the transport connection: Connection reset by peer.
2020-10-16 00:29:31 | stdout | ---> System.Net.Http.HttpRequestException: Error while copying content to a stream.
2020-10-16 00:29:31 | stdout | [35]: Uploading to /_synbak.enc/photo/slava-s7-sd-smbsync/2020-10-10/20201010_105521.jpg failed with System.AggregateException: One or more errors occurred. (Error while copying content to a stream.)
2020-10-16 00:29:31 | stdout | at YaR.Clouds.Base.Streams.UploadStreamHttpClient.<Initialize>b__6_1(Stream stream, HttpContent httpContent, TransportContext arg3)

Я использую docker image и версию WebDavMailRuCloud 1.11.0.3 но мне не кажется что проблема в докере.

2020-10-16 00:01:07 | stdout | [1]: WebDAV server running at http://*:8010/
-- | -- | --
2020-10-16 00:01:07 | stdout | [1]: Start as service: False
2020-10-16 00:01:07 | stdout | [1]: Use locks: False
2020-10-16 00:01:07 | stdout | [1]: List query folder depth: 1
2020-10-16 00:01:07 | stdout | [1]: Cache listings, sec: 30
2020-10-16 00:01:07 | stdout | [1]: Cloud protocol: WebM1Bin
2020-10-16 00:01:07 | stdout | [1]: Max threads count: 5
2020-10-16 00:01:07 | stdout | [1]: Using proxy:
2020-10-16 00:01:07 | stdout | [1]: Version: 1.11.0.30
2020-10-16 00:01:07 | stdout | [1]: User interactive: True
2020-10-16 00:01:07 | stdout | [1]: CLR: .NET Core 3.1.8
2020-10-16 00:01:07 | stdout | [1]: OS Version: Unix 3.10.105.0
2020-10-16 00:01:07 | stdout | yar229@yandex.ru
2020-10-16 00:01:07 | stdout | v.1.11.0.30
2020-10-16 00:01:07 | stdout | WebDAVCloudMailRu: WebDAV emulator for Cloud.mail.ru
yar229 commented 3 years ago

Со времён 1.11.0.3 на стороне mail.ru произошли критичные изменения. Обновитесь до последней версии