Встроенный Grafana в Gitlab не работает через обратный прокси - PullRequest
0 голосов
/ 20 апреля 2020

При попытке посетить URL (как администратор): https://gitlab.domain.com/-/grafana Я столкнулся с ошибкой 404 Страница не найдена.

Поэтому при попытке посетить мониторинг Grafana (предоставляется через GitLab) Я сталкиваюсь с ошибкой 404 Page Not Found.

Grafana работает на порту 3000, поэтому curl localhost:3000 выводит:

<a href="/-/grafana/login">Found</a>.

У меня есть попытался добавить следующие блоки местоположения в мою Apache конфигурацию

<Location /-/grafana>
ProxyPassReverse http://127.0.0.1:3000/
</Location>

и

<Location /-/grafana>
    ProxyPass http://127.0.0.1:3000
    ProxyPassReverse http://127.0.0.1:3000
</Location>

Это мои apache конфигурации:

<VirtualHost *:80>
  ServerName gitlab.domain.com
  ServerSignature Off
  ProxyPreserveHost On

  AllowEncodedSlashes NoDecode

  <Location />
    Require all granted

    ProxyPassReverse http://127.0.0.1:8181
    ProxyPassReverse http://example.com/
  </Location>

  RewriteEngine on

  DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public

RewriteCond %{SERVER_NAME} =gitlab.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

и для https:

<IfModule mod_ssl.c>
SSLStaplingCache shmcb:/var/run/apache2/stapling_cache(128000)
<VirtualHost *:443>
  ServerName gitlab.example.com
  ServerSignature Off

  ProxyPreserveHost On

  AllowEncodedSlashes NoDecode

  <Location />
    Require all granted

    ProxyPassReverse http://127.0.0.1:8181
    ProxyPassReverse http://example.com/
  </Location>


RequestHeader set Host "gitlab.example.com"
RequestHeader add X-Forwarded-Ssl on
RequestHeader set X-Forwarded-Proto "https"
  RewriteEngine on

  #Forward all requests to gitlab-workhorse except existing files like error documents
  RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f [OR]
  RewriteCond %{REQUEST_URI} ^/uploads/.*
  RewriteRule .* http://127.0.0.1:8181%{REQUEST_URI} [P,QSA]
  DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public

</VirtualHost>
</IfModule>

К сожалению, ни один из блоков местоположения не работает. Я поместил оба блока в конфигурации порта 80 apache и конфигурации порта 443, но я все еще застрял на странице ошибки 404.

...