Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon ec2 连接到ec2上的neo4j_Amazon Ec2_Neo4j - Fatal编程技术网

Amazon ec2 连接到ec2上的neo4j

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

我正在尝试连接到新设置的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 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配置为使用的证书。WebSocket
readyState
is:3

我尝试了几种不同的设置,但没有一种比这更进一步


我找到的最接近的线程是这一个,但它没有答案,涉及到另一个版本(使用neo4j server.properties)。

在设置中勾选“不要使用螺栓”选项解决了这个问题。

我刚才让neo4j工作。 对于aws ec2 我必须改变两件事:

  • 该实例的AWS安全组

    允许TCP从任何地方访问7474和7687(只需将默认http端口替换为neo4j端口) 7474用于对neo4j的http请求,7687用于螺栓

  • 编辑
    /etc/neo4j/neo4j.conf
    文件中的配置

    这个配置文件编辑非常混乱。我浏览了这些评论:

    • -这对我不起作用
    • -这种方法有效,但不是最新的
    • 看到你的形象后,我解决了我的问题
    我编辑了以下内容:

    • dbms.connectors.default\u listen\u address=0.0.0
    • dbms.connectors.default\u advised\u address=
      -我刚刚映射了一个弹性ip并使用了它
    • 然后,我通过取消注释并添加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以作为远程服务进行侦听
  • 我也不知道你为什么需要nginx;在我这方面,我只是尝试在aws ec2实例中设置neo4j。 下面是一些帮助我设置的neo4j链接

    • -这适用于ubuntu 18.04,但我使用默认jdk而不是openjdk-8。感觉有点简单
    致以最良好的祝愿


    Stevenson Lee

    您是否尝试过在浏览器设置(左下角齿轮图标)中勾选“可用时使用螺栓协议”?这解决了问题。在Neo4j CE 3.2.1上,我在Neo4j浏览器设置中使用“使用螺栓+路由”,并勾选/取消勾选它不起作用。这解决了我的问题,非常感谢!我和它搏斗了几个小时。你是救命恩人。