Как обслуживать статическую папку, используя страницу Gitlab и обратный прокси-сервер nginx? - PullRequest
1 голос
/ 22 мая 2019

Я использую react-styleguidist для написания своей документации с использованием уценки.

У меня есть следующая уценка:

- `guideline.pdf` [![pdf icon](/static/pdficon.png)](/static/annex/website/guideline.pdf)

Это прекрасно работает в разработке, нопоскольку страница Gitlab обслуживается в подпути, у меня возникла проблема при производстве.

Вместо выборки http://myapp.com/communication/static/pdficon.png, она пытается получить http://myapp.com/static/pdficon.png, что приводит к 404.

Это моя конфигурация обратного прокси-сервера nginx:

# configuration file /etc/nginx/upstream-conf/default-with-host-non-ssl.conf:
proxy_pass http://$upstream;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_read_timeout 900;
proxy_send_timeout 900;
# configuration file /etc/nginx/sites-enabled/wildcard.myapp.com.conf:
server {
  listen 80;

  server_name  ~^(?<group>.*)\.myapp\.com$;
  server_tokens off;
  disable_symlinks on;
  location / {
    auth_basic_user_file             /etc/nginx/htpasswd/page-yeutech/.htpasswd;
    proxy_intercept_errors on;
    location /img {
      try_files $uri /img/default.jpg;
    }

    set $upstream 192.168.2.45:31581;
    include /etc/nginx/upstream-conf/default-with-host-non-ssl.conf;
  }

  error_page 404 /404.html;

  location = /404.jpg {
    root /var/www/wildcard.myapp.com/html;
  }

  location = /404.html {
    root /var/www/wildcard.myapp.com/html;
    internal;
  }

  ## Individual nginx logs for this GitLab vhost
  access_log  /var/log/nginx/wildcard-www-myapp-com_access.log;
  error_log   /var/log/nginx/wildcard-www-myapp-com_error.log;
}

Для удобства разработки и производства я лучше не изменяю синтакс в моих файлах для установки полного URL.

Как можноЯ это исправлю элегантно?

...