title: Connection error to Graphenedb hosted on heroku
body: <p>Hi I am getting Unable to connect to localhost on port 7687 - is the server running? error whenever my python code executing </p>
  
  <pre><code>import os
  import json
  from urllib.parse import urlparse, urlunparse
  
  from django.shortcuts import render
  
  # Create your views here.
  from py2neo import Graph, authenticate
  from bottle import get,run,request,response,static_file
  from py2neo.packages import neo4j
  
  url = urlparse(os.environ.get("GRAPHENEDB_GOLD_URL"))
  url_without_auth = urlunparse((url.scheme, ("{0}:{1}").format(url.hostname, url.port), '', None, None, None))
  user = url.username
  password = url.password
  authenticate(url_without_auth,user, password)
  graph = Graph(url_without_auth, bolt = False)
  
  #graph = Graph(password='vjsj56@vb')
  
  
  @get("/")
  def get_index():
      return static_file("index.html", root="static")
  
  
  @get("/graph")
  def get_graph(self):
      print("i was here" )
      print("graph start")
      results = graph.run(
          "MATCH (m:Movie)&lt;-[:ACTED_IN]-(a:Person) "
          "RETURN m.title as movie, collect(a.name) as cast "
          "LIMIT {limit}", {"limit": 10})
      print("graph run the run")
      nodes = []
      rels = []
      i = 0
      for movie, cast in results:
          #print("i am here")
          nodes.append({"title": movie, "label": "movie"})
          target = i
          i += 1
          for name in cast:
              print(name)
              actor = {"title": name, "label": "actor"}
              try:
                  source = nodes.index(actor)
              except ValueError:
                  nodes.append(actor)
                  source = i
                  i += 1
              rels.append({"source": source, "target": target})
      return {"nodes": nodes, "links": rels}
  
  
  @get("/search")
  def get_search():
      try:
          q = request.query["q"]
      except KeyError:
          return []
      else:
          results = graph.run(
              "MATCH (movie:Movie) "
              "WHERE movie.title =~ {title} "
              "RETURN movie", {"title": "(?i).*" + q + ".*"})
          response.content_type = "application/json"
          return json.dumps([{"movie": dict(row["movie"])} for row in results])
  
  
  @get("/movie/&lt;title&gt;")
  def get_movie(title):
      results = graph.run(
          "MATCH (movie:Movie {title:{title}}) "
          "OPTIONAL MATCH (movie)&lt;-[r]-(person:Person) "
          "RETURN movie.title as title,"
          "collect([person.name, head(split(lower(type(r)),'_')), r.roles]) as cast "
          "LIMIT 1", {"title": title})
      row = results.next()
      return {"title": row["title"],
              "cast": [dict(zip(("name", "job", "role"), member)) for member in row["cast"]]}
  </code></pre>
  
  <p>this code is running fine on my local syatem but giving connection error when deployed on heroku and graphenedb</p>
  
  <p>exception location: /app/.heroku/python/lib/python3.6/site-packages/py2neo/packages/neo4j/v1/connection.py in connect, line 387</p>