Firstly, let me apologise for my lack of knowledge. I am reasonably new to .Net and the wonders of Umbraco.
I have two Umbraco websites setup, one production one staging, before go live these sites were syncing with courier as expected and all was well.
Once the production site was moved live and beyond the business firewall the syncing function has stopped working, I think it might be something to do with the SSL, but as I said .. a noob.
Here is the error I now get:
Application Error The underlying connection was closed: An unexpected
error occurred on a send. Error detailsSystem.Net.WebException: The underlying connection was closed: An
unexpected error occurred on a send. —> System.IO.IOException:
Unable to read data from the transport connection: An existing
connection was forcibly closed by the remote host. —>
System.Net.Sockets.SocketException: An existing connection was
forcibly closed by the remote host at
System.Net.Sockets.Socket.Receive(Byte buffer, Int32 offset, Int32
size, SocketFlags socketFlags) at
System.Net.Sockets.NetworkStream.Read(Byte buffer, Int32 offset,
Int32 size)
— End of inner exception stack trace — at System.Net.Sockets.NetworkStream.Read(Byte buffer, Int32 offset,
Int32 size) at System.Net.FixedSizeReader.ReadPacket(Byte buffer,
Int32 offset, Int32 count) at
System.Net.Security.SslState.StartReceiveBlob(Byte buffer,
AsyncProtocolRequest asyncRequest) at
System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst,
Byte buffer, AsyncProtocolRequest asyncRequest) at
System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult
lazyResult) at
System.Threading.ExecutionContext.RunInternal(ExecutionContext
executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx) at
System.Threading.ExecutionContext.Run(ExecutionContext
executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx) at
System.Threading.ExecutionContext.Run(ExecutionContext
executionContext, ContextCallback callback, Object state) at
System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result) at
System.Net.TlsStream.Write(Byte buffer, Int32 offset, Int32 size) at
System.Net.ConnectStream.WriteHeaders(Boolean async)
— End of inner exception stack trace — at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest
request) at
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
methodName, Object parameters) at
Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.CloseSession(String
sessionKey) at
Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose(Boolean
disposing) at
Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose()
at Umbraco.Courier.Core.Repository.Dispose(Boolean disposing) at
Umbraco.Courier.Core.Repository.Dispose() at
Umbraco.Courier.UI.Dialogs.CommitItem.OnInit(EventArgs e) at
System.Web.UI.Control.InitRecursive(Control namingContainer) at
System.Web.UI.Page.ProcessRequestMain(Boolean
includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Unable to read data from the transport connection: An existing
connection was forcibly closed by the remote host.System.IO.IOException: Unable to read data from the transport
connection: An existing connection was forcibly closed by the remote
host. —> System.Net.Sockets.SocketException: An existing connection
was forcibly closed by the remote host at
System.Net.Sockets.Socket.Receive(Byte buffer, Int32 offset, Int32
size, SocketFlags socketFlags) at
System.Net.Sockets.NetworkStream.Read(Byte buffer, Int32 offset,
Int32 size)
— End of inner exception stack trace — at System.Net.Sockets.NetworkStream.Read(Byte buffer, Int32 offset,
Int32 size) at System.Net.FixedSizeReader.ReadPacket(Byte buffer,
Int32 offset, Int32 count) at
System.Net.Security.SslState.StartReceiveBlob(Byte buffer,
AsyncProtocolRequest asyncRequest) at
System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst,
Byte buffer, AsyncProtocolRequest asyncRequest) at
System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult
lazyResult) at
System.Threading.ExecutionContext.RunInternal(ExecutionContext
executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx) at
System.Threading.ExecutionContext.Run(ExecutionContext
executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx) at
System.Threading.ExecutionContext.Run(ExecutionContext
executionContext, ContextCallback callback, Object state) at
System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result) at
System.Net.TlsStream.Write(Byte buffer, Int32 offset, Int32 size) at
System.Net.ConnectStream.WriteHeaders(Boolean async) An existing
connection was forcibly closed by the remote hostSystem.Net.Sockets.SocketException (0x80004005): An existing
connection was forcibly closed by the remote host at
System.Net.Sockets.Socket.Receive(Byte buffer, Int32 offset, Int32
size, SocketFlags socketFlags) at
System.Net.Sockets.NetworkStream.Read(Byte buffer, Int32 offset,
Int32 size)
It is with Umbraco 7.2.1 & Courier 2.51.4
Any thoughts or testing ideas greatly appreciated.
Thanks
J
2016/04/13 Update - It looks like it might be a problem with the SSL certificate on the server that recently upgraded to TLS/SSL1.2 and therefore courier is not able to communicate with itself. Any thoughts along that process would be helpful, but I will update with any solutions.
This is a companion discussion topic for the original entry at https://our.umbraco.com/forum/74628-the-underlying-connection-was-closed-an-unexpected-error-occurred-on-a-send