Você pode usar try_files com $request_uri
ou $uri$is_args$args
, dependendo se você deseja decodificar os bits codificados por url ou não ao procurar pelo nome do arquivo.
O Nginx está exibindo apenas arquivos estáticos, mas alguns dos nomes de arquivos contêm '?'. Sim, o ponto de interrogação.
Todos os URLs que contêm '?' rendimento 404 mesmo que o arquivo realmente exista. por exemplo,
> GET /foo?lang=ar.html HTTP/1.1
...
...
< HTTP/1.1 404 Not Found
Enquanto um arquivo chamado foo? lang = ar.html existe no local esperado.
Gostaria de saber se existe uma maneira de dizer ao Nginx para tratar a solicitação inteira como URL, incluindo o que está sendo traduzido como uma string de consulta.
A única solução que tenho em mente é escrever um pequeno servidor web que faz isso e ter nginx reverse proxy que servidor web, mas eu prefiro fazê-lo sozinho com nginx.
Você pode usar try_files com $request_uri
ou $uri$is_args$args
, dependendo se você deseja decodificar os bits codificados por url ou não ao procurar pelo nome do arquivo.
Tags nginx