Запрос к nginx в Docker с потерей номера порта в конкретном запросе

Я запускаю Nginx внутри Docker, с отображением портов 8080:80, Мой контент сопоставлен с /var/www/content',

Я создаю следующие два файла по следующим путям:

/var/www/content/index.html
/var/www/content/test/index.html

Мой nginx.conf определяется следующим образом:

server {
  server_name _;
  listen 80 default_server;

  root /var/www/content;
  index index.html;

  access_log /dev/stdout;
  error_log /dev/stdout info;

  add_header X-debug-base "base $uri $document_root" always;

  location / {
    add_header X-debug-one "location / $uri $document_root" always;
    try_files $uri $uri/ index.html;
  }
}

Я могу выполнить html-файлы, которые я поместил туда при доступе к нему через следующие запросы:

  1. http://localhost:8080/ -> запускает первый index.html, браузер показывает http://localhost:8080/
  2. http://localhost:8080/ -> сначала запускает index.html, браузер показывает http://localhost:8080/ (почему здесь заканчивается косая черта?)
  3. http://localhost:8080/index.html -> сначала запускает index.html, браузер показывает http://localhost:8080/index.html
  4. http://localhost:8080/test/index.html -> запускает test/index.html, браузер показывает http://localhost:8080/test/index.html
  5. http://localhost:8080/test/ -> запускает test/index.html, браузер показывает http://localhost:8080/test/
  6. http://localhost:8080/test -> FAILS. Браузер показывает http://localhost/test/, который выдает ошибки из-за потери правильного порта.

Две загадки для меня:

1) Почему завершающий слеш удаляется в тестовом примере № 2, и кто за это отвечает? Т.е. это Chrome или Nginx?

2) Более уместен мой вопрос, является ли тестовый пример 6. Почему я теряю номер порта только для этого типа запроса? При проверке других слов, которые не соответствуют папке на моем локальном компьютере, запрос обрабатывается, как и ожидалось.

Я искал, как отследить выполнение nginx, но это кажется очень сложным. Идея заголовков, приведенная ниже, не помогает, и в журнале нет ничего полезного.

Как я могу выяснить виновника переписывания моего URL?

0 ответов

Другие вопросы по тегам