专用 Web 服务器

Neo4j 浏览器是一个客户端单页应用程序 (SPA),它使用 HTTP 服务器来提供其静态内容。可以托管一个专用 Web 服务器来将 Neo4j 浏览器作为 Web 应用程序提供。从 Maven 下载 Neo4j 浏览器。

以下是此部署模式为什么可能很有用的用例。

本地托管的 Neo4j 浏览器

如果您有权访问 Neo4j 实例并且不想安装 Neo4j 桌面或不想使用托管的 Neo4j 浏览器 Web 应用程序,则此情况适用。这是一个简单的解决方案,使用一个简单的单行命令,在您的机器上启动本地托管的 Neo4j 浏览器 Web 应用程序。运行特定版本的 Neo4j 浏览器也很容易,从 Maven 下载首选版本。

已部署的 Neo4j 浏览器 Web 应用程序

如果您想在您的网络中拥有特定的网络配置,并托管 Neo4j 浏览器以供您组织内部快速访问,则可以使用 HTTP Web 服务器托管 Neo4j 浏览器。这样就可以完全控制根据需要配置 HTTP Web 服务器。例如,您可能想要添加一层访问控制来访问 Neo4j 浏览器 Web 应用程序,并配置 HTTP Web 服务器连接以使用 TLS。

扩展或改进源代码

Neo4j 浏览器是开源的(GNU 通用公共许可证 v3.0),源代码可以在 https://github.com/neo4j/neo4j-browser 中找到。如果您想扩展或为该项目做出贡献,您可以修改代码。这使您能够运行修改后的 Neo4j 浏览器版本。

如果您已在系统上安装了 Neo4j,请禁用浏览器模块 (BROWSER) 的运行。
有关更多信息,请参见 dbms.http_enabled_modules 配置设置。

HTTP Web 服务器

以下是可用于托管 Neo4j 浏览器的简单 HTTP Web 服务器的一些建议。

Python3 — http.server

一个与 Python 3 捆绑在一起的简单 HTTP 服务器。不要在生产环境中使用。

python -m http.server --directory neo4j-browser/ 8080
Node.js — http-server

一个简单、零配置的命令行 HTTP 服务器。

npx http-server -p 8080 neo4j-browser/

有关更多信息,请参见 https://npmjs.net.cn/package/http-server.

Node.js — serve

一个简单的 HTTP 服务器,非常适合为静态站点、单页应用程序或只是一个静态文件提供服务。

npx serve -l 8080 neo4j-browser/

有关更多信息,请参见 https://npmjs.net.cn/package/serve.

适用于生产环境的 HTTP 服务器

Nginx

一个 Web 服务器,也可以用作反向代理和负载均衡器。
有关更多信息,请参见 https://www.nginx.com/.

Apache HTTP 服务器

有关更多信息,请参见 https://httpd.apache.ac.cn/.

Internet Information Services (IIS)

有关更多信息,请参见 https://www.iis.net/.

预构建的 Neo4j 浏览器

您可以从 Maven 下载 Neo4j 浏览器 (https://search.maven.org/artifact/org.neo4j.client/neo4j-browser) 并使用 HTTP 服务器提供 Web 应用程序。

示例 1. 获取预构建的 Neo4j 浏览器并运行 HTTP Web 服务器
  1. 从 Maven 下载 Neo4j 浏览器。

    wget https://repo1.maven.org/maven2/org/neo4j/client/neo4j-browser/5.13.0/neo4j-browser-5.13.0.jar

    或者,手动转到 https://search.maven.org/artifact/org.neo4j.client/neo4j-browser 并下载 Neo4j 浏览器。

  2. 解压缩 .jar 文件。

    unzip neo4j-browser-5.13.0.jar
  3. 使用 HTTP 服务器托管 Neo4j 浏览器。

    启动一个 Web 服务器来提供内容。在本例中,您使用 Python 3 启动一个 Web 服务器。

    python -m http.server --directory browser/ 8080

    将您的 Web 浏览器指向 https://127.0.0.1:8080.

  4. 测试与 Neo4j 数据库实例的连接。

    如果您有 Neo4j 压缩包,则可以使用以下命令启动数据库实例(假设当前工作目录为 <neo4j-home>

    bin/neo4j start

    在 Neo4j 浏览器中,使用 URI 连接到 Neo4j 数据库实例

    neo4j://127.0.0.1:7687

有关如何在 Neo4j 浏览器中设置与 Neo4j 的连接的详细信息,请参见 连接到 Neo4j DBMS.

构建 Neo4j 浏览器

您可以构建源代码并托管 Neo4j 浏览器。

源代码可以在 https://github.com/neo4j/neo4j-browser 中找到。

示例 2. 构建 Neo4j 浏览器并运行 HTTP Web 服务器
  1. 从 Github 获取源代码

    克隆 Neo4j 浏览器 Git 存储库。该命令仅获取 master 分支以节省带宽和文件空间。

    git clone --single-branch --branch=master https://github.com/neo4j/neo4j-browser/

    将当前工作目录更改为 Git 存储库的根目录。

    cd neo4j-browser
  2. 使用 Node.js 构建。

    1. 安装 Node.js 依赖项。

      npm install
    2. 构建项目。

      npm build
  3. 使用 HTTP 服务器托管 Web 应用程序。

    启动一个 Web 服务器来提供内容。在本例中,您使用 Python 3 启动一个 Web 服务器。

    python -m http.server --directory dist/ 8080

    将您的 Web 浏览器指向 https://127.0.0.1:8080.

有关如何在 Neo4j 浏览器中设置与 Neo4j 的连接的详细信息,请参见 连接到 Neo4j DBMS.