Maison  >  Questions et réponses  >  le corps du texte

Comment forcer la réécriture de Nginx à renvoyer 200 codes d'état ?

               if (!-e $request_filename){
               rewrite "^/maisi/images/(.*)\.jpg" http://img03.taobaocdn.com/.jpg_300x300.jpg last;
               rewrite "^/maisi/images/(.*)\.png" http://img03.taobaocdn.com/.png_300x300.jpg last;
             }

Ce qui précède est une réécriture d'image nginx. En fait, mon image est une image Taobao !

Cela renverra 302 déplacés temporairement ;

Y a-t-il un moyen de restituer 200 OK

伊谢尔伦伊谢尔伦2734 Il y a quelques jours713

répondre à tous(2)je répondrai

  • PHP中文网

    PHP中文网2017-05-16 17:29:56

    Parce que la réécriture renvoie 302, le navigateur saura qu'il doit faire une autre requête, puis se rendra sur le cdn de Taobao pour obtenir l'image. Si 200 est renvoyé, tout cela n'arrivera pas

    .

    Si vous ne pouvez pas copier le fichier, vous pouvez envisager d'utiliser proxy_pass. Dans ce cas, cela équivaut à ce que nginx lise l'image de taobao sur votre serveur à chaque fois, puis votre serveur envoie l'image à l'utilisateur, ce qui peut renvoyer 200 Oui. , mais la pression sur le serveur va augmenter

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 17:29:56

    location = /example/path {
        return 200;
    }

    répondre
    0
  • Annulerrépondre