Запрос к 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-файлы, которые я поместил туда при доступе к нему через следующие запросы:
- http://localhost:8080/ -> запускает первый index.html, браузер показывает http://localhost:8080/
- http://localhost:8080/ -> сначала запускает index.html, браузер показывает http://localhost:8080/ (почему здесь заканчивается косая черта?)
- http://localhost:8080/index.html -> сначала запускает index.html, браузер показывает http://localhost:8080/index.html
- http://localhost:8080/test/index.html -> запускает test/index.html, браузер показывает http://localhost:8080/test/index.html
- http://localhost:8080/test/ -> запускает test/index.html, браузер показывает http://localhost:8080/test/
- http://localhost:8080/test -> FAILS. Браузер показывает http://localhost/test/, который выдает ошибки из-за потери правильного порта.
Две загадки для меня:
1) Почему завершающий слеш удаляется в тестовом примере № 2, и кто за это отвечает? Т.е. это Chrome или Nginx?
2) Более уместен мой вопрос, является ли тестовый пример 6. Почему я теряю номер порта только для этого типа запроса? При проверке других слов, которые не соответствуют папке на моем локальном компьютере, запрос обрабатывается, как и ожидалось.
Я искал, как отследить выполнение nginx, но это кажется очень сложным. Идея заголовков, приведенная ниже, не помогает, и в журнале нет ничего полезного.
Как я могу выяснить виновника переписывания моего URL?