2016-09-23 2 views
0

J'essaie d'installer une application Flask/Neo4j sur un serveur Ubuntu distant, et j'ai rencontré un problème que je n'ai pas réussi à résoudre. Mon application utilise py2neo, mais quand elle essaie de se connecter au graphique, l'application plante et le processus Neo4j semble s'arrêter. Je l'ai essayé de relier dans une coquille de python comme ça ...py2neo SocketError: Connexion refusée, mais curl fonctionne

test = Graph('http://localhost:7474/db/data/',username='neo4j',password='myPassword') 

qui échoue, et rend également Neo4j inopérante jusqu'à ce que je le redémarrer. Cependant, ces réponses renvoient 200 (et l'interface Web fonctionne aussi):

curl -u neo4j http://localhost:7474/db/data/ 

requests.get('http://localhost:7474/db/data/', auth=('neo4j','myPassword')) 

J'ai essayé de fournir plus d'informations que this similar question, car il semble que la connexion fonctionne de partout mais py2neo.

Voici le plein retraçage:

Traceback (most recent call last): 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/database/__init__.py", line 318, in __new__ 
    inst = cls.__instances[key] 
KeyError: (<class 'py2neo.database.Graph'>, <ServerAddress settings={'http_port': 7474, 'host': 'localhost'}>, 'data') 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 322, in submit 
    response = send() 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 317, in send 
    http.request(xstr(method), xstr(uri.absolute_path_reference), body, headers) 
    File "/usr/lib/python3.5/http/client.py", line 1106, in request 
    self._send_request(method, url, body, headers) 
    File "/usr/lib/python3.5/http/client.py", line 1151, in _send_request 
    self.endheaders(body) 
    File "/usr/lib/python3.5/http/client.py", line 1102, in endheaders 
    self._send_output(message_body) 
    File "/usr/lib/python3.5/http/client.py", line 934, in _send_output 
    self.send(msg) 
    File "/usr/lib/python3.5/http/client.py", line 877, in send 
    self.connect() 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 80, in connect 
    self.source_address) 
    File "/usr/lib/python3.5/socket.py", line 711, in create_connection 
    raise err 
    File "/usr/lib/python3.5/socket.py", line 702, in create_connection 
    sock.connect(sa) 
ConnectionRefusedError: [Errno 111] Connection refused 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/database/__init__.py", line 327, in __new__ 
    use_bolt = version_tuple(inst.__remote__.get().content["neo4j_version"]) >= (3,) 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/database/http.py", line 154, in get 
    response = self.__base.get(headers=headers, redirect_limit=redirect_limit, **kwargs) 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 966, in get 
    return self.__get_or_head("GET", if_modified_since, headers, redirect_limit, **kwargs) 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 943, in __get_or_head 
    return rq.submit(redirect_limit=redirect_limit, **kwargs) 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 433, in submit 
    http, rs = submit(self.method, uri, self.body, self.headers) 
    File "/home/deploy/toponimika/toponimikaenv/lib/python3.5/site-packages/py2neo/packages/httpstream/http.py", line 362, in submit 
    raise SocketError(code, description, host_port=uri.host_port) 
py2neo.packages.httpstream.http.SocketError: Connection refused 

Tout ce que je pourrais essayer de comprendre ce qui se passe serait apprécié.

Répondre