O navegador não possui URL reescrito com string de consulta

O navegador não possui URL reescrito com string de consulta

Quando reescrevo o URL adicionando uma string de consulta, o URL no navegador não possui a string de consulta. Aqui está o que eu tenho:

location / {
    rewrite ^/$ /?page=test break;
}

Em vez disso, vejo o URL original no navegador quando visito o diretório raiz. Sou capaz de reescrever para outro caminho.

Responder1

Conforme está escrito, esta é apenas uma reescrita, que é (e deve ser) tratada internamente pelo servidor web sem que o usuário esteja ciente disso.

Você pode tornar este usuário visível temporária ou permanentemente adicionando as instruções redirectou permanentà sua linha de reescrita (documento nginx para reescrever).

Tenha cuidado com a permanentvariante (Código HTTP 301), o nome é bastante literal e o navegador irá armazená-lo, por isso é difícil alterá-lo posteriormente - isso só deve ser usado para migrar para um novo sistema.

O uso redirectforçará o navegador a recarregar o site com o novo URL, portanto, isso também deve ser usado com cuidado, pois adicionará um atraso significativo ao tempo de carregamento da página.

Responder2

Esse problema está acontecendo por causaesse. reescrever com uma string de consulta funciona.

informação relacionada