nginx重写规则,用于在url前添加内容

nginx重写规则,用于在url前添加内容,nginx,url-rewriting,mobify,Nginx,Url Rewriting,Mobify,我想用MobifyCDN重写我所有的JPG文件URL。为此,我所要做的就是在URL前面加上前缀 https://ir0.mobify.com/jpg50/ 到我现有的URL。例如,如果我有URL http://xxx.yyy.com/wp-content/uploads/2290/07/abc.png 然后必须将用户重定向到 https://ir0.mobify.com/jpg50/http://xxx.yyy.com/wp-content/uploads/2290/07/abc.jpg 我在n

我想用MobifyCDN重写我所有的JPG文件URL。为此,我所要做的就是在URL前面加上前缀

https://ir0.mobify.com/jpg50/ 到我现有的URL。例如,如果我有URL

http://xxx.yyy.com/wp-content/uploads/2290/07/abc.png 然后必须将用户重定向到

https://ir0.mobify.com/jpg50/http://xxx.yyy.com/wp-content/uploads/2290/07/abc.jpg

我在nginx配置中编写了以下代码。我在regexlib测试了regexs,它们看起来很好。仍然不明白我的配置有什么问题。请帮忙

位置~\.jpg$ { 重写^http://.*.jpg$https://ir0.mobify.com/jpg50/$uri last; }试试这个

location ~ \.jpg$ { 
    return 301 https://ir0.mobify.com/jpg50$request_uri; 
}

好吧,看起来它应该会起作用。但是,通过nginx执行此操作会将URL发送到重定向循环中。当mobify没有缓存任何用户对给定文件的首次访问时,它会尝试直接从服务器获取图像,当它尝试这样做时,它会自动重定向到预先指定的URL,从而重定向循环。所以,我想最好在应用层处理这个问题。如果您对此重定向循环问题有任何解决方案,请共享。您必须在重定向之前将cookie或标头从Mobify发送到Nginx,并对其进行测试。Mobify超出了我的控制范围,因此我猜必须在应用层处理它