Estou executando o Nginx dentro do Docker, com o mapeamento de porta 8080:80
.
Meu conteúdo é mapeado para /var/www/content'
.
Eu criei os dois arquivos a seguir nos seguintes caminhos:
/var/www/content/index.html
/var/www/content/test/index.html
Meu nginx.conf é definido como o seguinte:
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;
}
}
Consigo executar os arquivos html que eu coloquei ao acessá-lo através das seguintes solicitações:
Dois mistérios para mim:
1) Por que a barra final é retirada do Caso de Teste # 2 e quem é responsável por ela? Ou seja: é o Chrome ou o Nginx?
2) Mais relevante para minha pergunta, é o caso de teste 6. Por que estou perdendo o número da porta apenas nesse tipo de solicitação? Ao testar outras palavras que não correspondem a uma pasta no meu local, a solicitação é tratada conforme o esperado.
Eu procurei como rastrear a execução do nginx, mas parece muito difícil de fazer. A ideia de cabeçalho abaixo não ajuda, e o log não tem nada que seja útil também.
Como posso descobrir o culpado por reescrever minha URL?