Назад | Перейти на главную страницу

В местоположении Nginx и proxy_pass отсутствует запрос, когда в URL-адресе присутствует хэш

У меня есть этот конфиг

server {
  listen 8080;
  access_log  /var/log/nginx/access.log;
  root        /usr/share/nginx/htdocs;
  index       index.html index.htm;
  port_in_redirect off;

  location /somepath/ {
      proxy_pass http://someinternalserver/somepath/;
  }

  location /health {
    return 200;
  }
}

Когда я получаю к нему доступ вот так, http: // наш-внешний-fqdn / somepath / оно работает.

Однако, когда я получаю к нему доступ вот так, http: // наш-внешний-fqdn / somepath / # Меня перенаправляют на нашу локальную установку для разработки, которая http: // локальный: 8000

Что мне не хватает?

Вы указали точный URL-адрес, а не регулярное выражение. Попробуй это

location ~* /somepath/ {
  proxy_pass http://someinternalserver/somepath/;
}

Если это не сработает, скрутите (с отображаемыми заголовками, я думаю, опция -D) URL-адрес, чтобы увидеть, что происходит, или используйте Firefox с «Live HTTP Headers». Опубликуйте выходные данные для этого запроса вместе с журналами доступа.