Amazon ec2 连接到ec2上的neo4j
我正在尝试连接到新设置的neo4j 以下是我配置neo4j.conf文件的方式:Amazon ec2 连接到ec2上的neo4j,amazon-ec2,neo4j,Amazon Ec2,Neo4j,我正在尝试连接到新设置的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 # You can also choose a specific netwo
# 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
# You can also choose a specific network interface, and configure a non-default
# port for each connector, by setting their individual listen_address.
# The address at which this server can be reached by its clients. This may be the server's IP address or DNS name, or
# it may be the address of a reverse proxy which sits in front of the server. This setting may be overridden for
# individual connectors below.
#dbms.connectors.default_advertised_address=localhost
dbms.connectors.default_advertised_address=xx.xxx.xxx.xxx
# You can also choose a specific advertised hostname or IP address, and
# configure an advertised port for each connector, by setting their
# individual advertised_address.
# 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
(xx.xxx.xxx.xxx为当日ip)
在日志中,它表示在端口7474上启用了远程接口:
2016-12-12 21:17:06.845+0000 INFO Starting...
2016-12-12 21:17:07.860+0000 INFO Bolt enabled on 0.0.0.0:7687.
2016-12-12 21:17:10.666+0000 INFO Started.
2016-12-12 21:17:12.234+0000 INFO Remote interface available at http://xx.xxx.xxx.xxx:7474/
使用lsof-i-n-p,我可以看到它正在收听:
java xxxx root xxxx IPv6 xxxxx 0t0 TCP *:7474 (LISTEN)
我确实设置了自定义tcp规则以允许从我的ip地址进行访问:
自定义TCP规则TCP 7474 xxx.xxx.xxx.xxx/xx
我确实让它显示在我的浏览器中,我被要求填写密码,但当我这样做时,我会收到以下消息:
无法连接到neo4j。请检查您的网络连接
一段时间后,还会出现以下一条消息:
WebSocket连接失败。由于web浏览器中存在安全限制,此Neo4j驱动程序无法找到故障原因。请使用浏览器开发控制台确定失败的根本原因。常见原因包括数据库不可用、使用错误的连接URL或临时网络问题。如果启用了加密,请确保将浏览器配置为信任Neo4j配置为使用的证书。WebSocketreadyState
is:3
我尝试了几种不同的设置,但没有一种比这更进一步
我找到的最接近的线程是这一个,但它没有答案,涉及到另一个版本(使用neo4j server.properties)。在设置中勾选“不要使用螺栓”选项解决了这个问题。我刚才让neo4j工作。 对于aws ec2 我必须改变两件事:
/etc/neo4j/neo4j.conf
文件中的配置
这个配置文件编辑非常混乱。我浏览了这些评论:
- -这对我不起作用
- -这种方法有效,但不是最新的
- 看到你的形象后,我解决了我的问题
dbms.connectors.default\u listen\u address=0.0.0
-我刚刚映射了一个弹性ip并使用了它dbms.connectors.default\u advised\u address=
- 然后,我通过取消注释并添加0.0.0.0来设置其余端口,以确保(我认为密钥使用的是公布的地址)
dbms.connector.bolt.enabled=true
dbms.connector.bolt.listen\u地址=0.0.0.0:7687
dbms.connector.http.enabled=true
dbms.connector.http.listen\u address=0.0.0.0:7474
dbms.connector.https.enabled=true
令人困惑的部分是dbms.connector.https.listen\u地址=0.0.0.0:7473
和收听地址
。我的理解是,neo4j web应用程序javascript使用后者来知道连接到哪里,而第一个类似于为mysql设置0.0.0.0以作为远程服务进行侦听广告地址
- -这适用于ubuntu 18.04,但我使用默认jdk而不是openjdk-8。感觉有点简单
Stevenson Lee您是否尝试过在浏览器设置(左下角齿轮图标)中勾选“可用时使用螺栓协议”?这解决了问题。在Neo4j CE 3.2.1上,我在Neo4j浏览器设置中使用“使用螺栓+路由”,并勾选/取消勾选它不起作用。这解决了我的问题,非常感谢!我和它搏斗了几个小时。你是救命恩人。