404 重写或重定向 nginx 路径

404 重写或重定向 nginx 路径

我在 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

改成。breaklast

因为新的 URL 需要由不同的 进行处理location,所以您需要让 nginx 重新启动对新的重写 URL 的处理,这仅lastrewrite规则中使用时才会完成。

文档以获得完整的工作原理解释rewrite

相关内容