Pergunta : nginx - possível reescrever baseado em consultar o URL?

está aqui um exemplo chamado URL: rel= " nofollow " do " _blank " " do target= de " http://myserver.com/index.php?id=15 do href= do
http://myserver.com/index. php? id=15

I gostaria de mudar o id= baseado no referrer….o

so eu terei uma lista de referers….o URL do referer do

if contem o MOO/cow.php a seguir a reescrita: rel= " nofollow " do " _blank " " do target= de " http://myserver.com/index.php?id=15 do href= do
http://myserver.com/index. php? o URL do referer de id=15

if contem o leite/cookies.php a seguir a reescrita: rel= " nofollow " do " _blank " " do target= de " http://myserver.com/index.php?id=16 do href= do
http://myserver.com/index. php? id=16

Thanks,

-Eric
class= do

Resposta : nginx - possível reescrever baseado em consultar o URL?

Olá! primeiramente coisa, se sua espera desta régua atear fogo quando os pedidos de usuário paginarem “/moo/dog.html? id=99” então que você precisa de mudar a reescrita ^.*/index.php para ^.*/moo/dog.html$, a menos que houver outras réguas já in place, que podem coisas enlameadas.

Eu sou longe de um perito do nginx, mas sou mim corrijo em pensar a variável de $http_HEADER contenho o encabeçamento cheio do HTTP, including o referer, assim que pode valer a pena comutar os dois para ver se faz uma diferença. Igualmente a sintaxe abaixo pode ser mais perto do que você quer


se (~* de $http_referer (MOO/cow.html)) {
   ajustar $test a;
}

se ($args! ~* “id=15”) {
   ajustar $test “$ {teste} b”;
}

se ($test = ab) {
     reescrever o último de ^.*/moo/dog.html$ http://target.electronicgroups.com/moo/cat.html?id=15;
}
   
Outras soluções  
 
programming4us programming4us