【发布时间】:2017-07-13 02:52:46
【问题描述】:
我有一个在 GCE Ubuntu 16.04 实例上运行的 neo4j 服务器,我想在本地浏览器中访问它。当我在浏览器中输入地址时,它会引发 DNS 错误。我可以做些什么来连接?这是我到目前为止所做的:
在 GCE 上添加了防火墙规则,以使远程主机能够侦听端口 7474 和 7473。
在 /etc/neo4j/neo4j.conf 中更改了以下几行:
# With default configuration Neo4j only accepts local connections.
# To accept non-local connections, uncomment this line:
dbms.connectors.default_listen_address=0.0.0.0
# Bolt connector
dbms.connector.bolt.enabled=true
#dbms.connector.bolt.tls_level=OPTIONAL
dbms.connector.bolt.listen_address=:7687
# HTTP Connector. There must be exactly one HTTP connector.
dbms.connector.http.enabled=true
dbms.connector.http.listen_address=:7474
# HTTPS Connector. There can be zero or one HTTPS connectors.
dbms.connector.https.enabled=true
dbms.connector.https.listen_address=:7473
Netstat 输出:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp6 0 0 :::7687 :::* LISTEN
tcp6 0 0 :::7473 :::* LISTEN
tcp6 0 0 :::7474 :::* LISTEN
每次我启动 neo4j(服务 neo4j 启动,而不仅仅是 neo4j 启动)时,都会显示以下内容:
Jul 12 18:43:50 instance-1 neo4j[2003]: 2017-07-12 18:43:50.188+0000 INFO ======== Neo4j 3.2.2 ========
Jul 12 18:43:50 instance-1 neo4j[2003]: 2017-07-12 18:43:50.358+0000 INFO Starting...
Jul 12 18:43:54 instance-1 neo4j[2003]: 2017-07-12 18:43:54.119+0000 INFO Bolt enabled on 0.0.0.0:7687.
Jul 12 18:44:03 instance-1 neo4j[2003]: 2017-07-12 18:44:03.511+0000 INFO Started.
Jul 12 18:44:08 instance-1 neo4j[2003]: 2017-07-12 18:44:08.037+0000 INFO Remote interface available at http://localhost:7474/
【问题讨论】:
-
如果您收到 DNS 错误,那么这并不是 neo4j 的问题,是吗?你还有其他可以访问的东西吗?
-
是的,我在访问同一实例上运行的 Flask 应用程序时没有问题,但我也无法从远程 Python 脚本连接到 neo4j
-
您的防火墙规则听起来不像您预期的那样有效。正如汤姆所说,您需要在 f/w 规则中允许 7687。您的实例有标签吗?您的 fw 规则是否有
targetTags包含您实例中的标签? -
@DaveBennett 我已将 targetTag 设置为网络中的所有实例,这样应该没问题。我还设置了与设置 Flask 完全相同的防火墙规则,但看起来这是 tcp6。 GCE 不允许我将其设置为 tcp6:7474,所以我假设 tcp:7474 同时处理 v4 和 v6
标签: neo4j google-compute-engine