[1.x] Fixes SSL connection issues in Chrome / Arc #159
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When used with secure sites on Valet or Herd, Reverb will automatically discover the certificate and use it to enable secure WebSocket connections.
This works nicely, but there are issues in Chrome.
If you use Echo to connect over wss, Chrome will reject the connection without any useful reason why.
What's even more strange is if you navigate to https://site.test:8080 in the browser, Reverb will load the page with no SSL error.
After doing so, attempting to connect via Echo again (wss://site.test:8080), results in a successful connection 🤷
I was able to go deep into Chrome and review the logs which exposed an error:
ERR_SSL_CLIENT_AUTH_CERT_NEEDED
This indicates an issue in the SSL handshake between client and server. The server doesn't trust the certificate being used by the client - strange because it works fine over https.
By disabling peer verification, the handshake completes successfully.
I still believe this to be an issue with the browser, but this does resolve the issue and I don't really see an issue with disabling
verify_peer
in local development.