首頁  >  問答  >  主體

nginx rewrite 如何強制回傳200 狀態碼?

               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;
             }

上面是一個nginx 的圖片rewrite , 其實我的圖片就是淘寶圖!

這樣做回傳的是 302 Moved Temporarily;

有沒有辦法回傳200 OK

伊谢尔伦伊谢尔伦2712 天前694

全部回覆(2)我來回復

  • PHP中文网

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

    因為rewrite回傳了302,瀏覽才知道要再進行一次請求,才會去taobao的cdn拿圖片,如果返回200這一切就不會發生了

    如果不能把文件拷貝過來的話,可以考慮用proxy_pass來弄,這樣話,相當於每次都是nginx從taobao讀讀片到你的服務器,然後你的服務器再把圖片給用戶,是可以返回200的,不過就是伺服器的壓力會變大

    回覆
    0
  • 仅有的幸福

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

    雷雷

    回覆
    0
  • 取消回覆