Cant connect to Browserless [Rails]
marconaik
PROOP

a year ago

On local it works great but on production Im unable to use Ferrum since it uses chrome. I've installed chrome-browser from apt on my procfile before running the server but Ferrum its unable to find it. I've also added a which chrome-browser on the procfile and explicit add that directory to the client but im still getting same error.

Solved

7 Replies

marconaik
PROOP

a year ago

it seems like i could make it click somehow now, kindof. now im getting but it looks like it is because something its not being recognized

Ferrum::ProcessTimeoutError: Browser did not produce websocket url within 10 seconds, try to increase :process_timeout.

idk has anyone used this before?


marconaik
PROOP

a year ago

Tried the browserless approach and when Im trying with the HTTPS im getting this: OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 peeraddr=35.212.162.221:443 state=error: tlsv1 alert internal error
When i try with HTTP im getting is not a valid WebSocket URL (WebSocket::Driver::URIError)raise URIError, "#{ socket.url } is not a valid WebSocket URL"
and with only the url both URI are relative (URI::BadURIError)

All of the above was with the public url with the private it says Failed to open TCP connection to browserless.railway.internal:80 (getaddrinfo: nodename nor servname provided, or not known (SocketError)


marconaik
PROOP

a year ago

Im still stuck with this tried headless v1 and v2 every combination of configs. seems like i gotta pass the SSL error but dont know how


marconaik
PROOP

a year ago

This is the Ferrum's code that does the connection. port its 443 and the url im using its the BROWSER_WS_ENDPOINT bringed by the browserless template.

uri = URI.parse(url)

port = uri.port
tcp = TCPSocket.new(uri.host, port)

ssl_context = OpenSSL::SSL::SSLContext.new

@sock = OpenSSL::SSL::SSLSocket.new(tcp, ssl_context)

@sock.sync_close = true

@sock.connect


marconaik
PROOP

a year ago

managed to somehow fixit by adding theses settings to the ferrum websocket client

ssl_context.set_params(

verify_mode: OpenSSL::SSL::VERIFY_PEER,

ssl_version: :TLSv1_2,

verify_hostname: true,

ciphers: 'DEFAULT:!aNULL:!eNULL:!LOW:!EXPORT:!SSLv2'

)


Really appreciate you leaving debugging notes here as you move along smile emoji

Am I right in assuming you've solved this yourself?


Status changed to Awaiting User Response Railway about 1 year ago


ray-chen

Really appreciate you leaving debugging notes here as you move alongAm I right in assuming you've solved this yourself?

marconaik
PROOP

a year ago

yep


Status changed to Awaiting Railway Response Railway about 1 year ago


Status changed to Solved brody about 1 year ago


Loading...