Доступ к GraphDB Workbench через inte rnet (не localhost) на сервере Nginx - PullRequest
0 голосов
/ 01 мая 2020

У меня есть GraphDb (версия автономного сервера) в Ubuntu Server 16, работающая на локальном хосте (с командой ./graphdb -d в / etc / graphdb / bin). Но у меня есть только s sh доступ к серверу в терминале, я не могу открыть Worbench на локальном хосте: 7200 локально.

У меня много сайтов, работающих на этой машине с Ningx. Если я пытаюсь получить доступ к основному IP-адресу устройства через порт 7200 через внешнюю сеть, он не будет работать (например, http://193.133.16.72: 7200 / = "соединение отключено").

Я попытался создать обратный прокси с Nginx с этим кодом ("xxx" = домен):

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

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

Но все это не удается. Я проверил, и порт 7200 открыт в брандмауэре (UFW). В журналах я получаю информацию, что GraphDB работает локально в некоторых яичках. Но мне нужен доступ Workbench для импорта и создания репозиториев (не знаю, как это сделать, или если это возможно без Workbench GUI).

Есть ли способ подключиться через внешний веб-интерфейс к Workbench с помощью домен / IP и / или Nginx?

Прочитал всю документацию и искал весь день, но не смог найти способ справиться с этим извините. Я использовал GraphDB только локально (простая версия установщика), никогда раньше не использовал автономный сервер в производстве, извините.

PS: два дополнительных вопроса, связанных: a) Для создания конечной точки URI это та же процедура? б) Для демона GraphDB, запускаемого автоматически во время загрузки (с помощью команды ./graphdb -d в папке graph / bin), каков рекомендуемый способ и конфигурация? (попробовал строку "/ etc / graphdb / bin ./graphdb -d" в r c .local, но это не сработало).

1 Ответ

0 голосов
/ 01 мая 2020

В случае, если это кому-то полезно, я смог заставить его работать с этой Nginx конфигурацией:

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

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

Я думаю, что это был "proxy_set_header Host $ host;" это решило это (пробовал остальное без него раньше и не сработало). Я думаю, что GraphDB использует некоторые заголовки для установки конфигураций, и они не передаются.

Я бы удивился, если бы забыл что-то еще важное для пересылки в прокси, но в этот момент швы Worbench работают и открываются в используемый домен "sparql.xxxxxx.com".

...