我在 nginx 上重定向时遇到了问题
我有这个原始 URL:
https://www.example.com/media/wysiwyg/logo.png
我正在使用 Cloudflare Image,我可以使用它通过 Cloudflare Image 加载:
https://www.example.com/cdn-cgi/image/onerror=redirect/media/wysiwyg/logo3.png
但我需要这种动态,例如:
此文件夹中的所有内容:“media/wysiwyg/”将重定向到:
https://www.example.com/cdn-cgi/image/format=auto,onerror=redirect/media/wysiwyg/logo.png
logo.png 是动态的,但必须是图像(JPEG、GIF、PNG)。
我尝试了这个,但没有成功:
location ~ ^/media/wysiwyg/(.*)$ {
rewrite ^/media/wysiwyg/(.*)$ /cdn-cgi/image/format=auto,onerror=redirect/media/wysiwyg/$1 break;
}
如果我访问这个,我需要:
https://www.example.com/media/wysiwyg/logo.png
我需要重定向到此(不改变网址):
https://www.example.com/cdn-cgi/image/format=auto,onerror=redirect/media/wysiwyg/logo.png
怎么了?
答案1
改成。break
last
因为新的 URL 需要由不同的 进行处理location
,所以您需要让 nginx 重新启动对新的重写 URL 的处理,这仅last
在rewrite
规则中使用时才会完成。
看文档以获得完整的工作原理解释rewrite
。