通过Nginx服务器中的Internet(而非本地主机)访问GraphDB Workbench

时间:2020-04-30 21:21:30

标签: nginx server sparql rdf graphdb

我在本地主机(在/ etc / graphdb / bin中使用./graphdb -d命令)中运行的Ubuntu Server 16中具有GraphDb(独立服务器版本)。但是我只有SSH可以访问终端中的服务器,无法在本地主机localhost:7200中打开Worbench。

我使用Ningx在此计算机上运行了许多网站。如果我尝试通过外部网络使用端口7200访问计算机的主IP,则该IP不起作用(例如http://193.133.16.72:7200/ =“连接超时”)。

我尝试使用此代码(“ xxx” =域)与Nginx进行反向代理:

  listen 7200;
  listen [::]:7200;
  server_name sparql.xxx.com;

  location / {
      proxy_pass http://127.0.0.1:7200;
  }
}

但是所有这些都失败了。我检查并在防火墙(ufw)中打开了端口7200。在日志中,我了解到GraphDB在某些睾丸中正在本地工作。但是我需要Workbench访问权限才能导入和创建存储库(不确定如何操作,或者如果没有Workbench GUI,是否可能)。

是否可以使用域/ IP和/或Nginx通过外部Web连接到工作台?

阅读所有文档并整日进行搜索,但是找不到解决此问题的方法。我只在本地使用GraphDB(简单的安装程序版本),以前从未在生产中使用过独立服务器,对不起。

PS:另外两个有关的问题: a)创建URI端点的过程是一样的吗? b)为了使GraphDB守护程序在启动时自动启动(使用graph / bin文件夹中的命令./graphdb -d),推荐的方式和配置是什么? (尝试了rc.local中的“ / etc / graphdb / bin ./graphdb -d”行,但是没有用。)

1 个答案:

答案 0 :(得分:1)

如果它对某人有用,我可以使其与以下Nginx配置一起使用:

server {
  listen 80;
  server_name sparql.xxxxxx.com;

  location / {
        proxy_pass http://localhost:7200;
        proxy_set_header Host $host;
  }
}

我认为它是“ proxy_set_header主机$ host;”。解决了它(尝试了没有它的其余部分,并且没有用)。我认为GraphDB使用一些标头来设置配置,但它们没有通过。

如果我忘记了要在代理中转发的其他重要信息,那我就很伤心,但是在这一刻,Worbench可以正常工作并在使用“ sparql.xxxxxx.com”的域中打开。