我正在尝试使用Nginx从/t/latest/2
重定向到/topics/latest/page/2
rewrite ^/t/latest$ /topics/latest permanent;
rewrite ^/t/latest/(.*)$ /topics/latest/page/$1 permanent;
这很好用,但我想知道在一条规则中是否有更聪明的方法可以做到这一点?这是因为有很多这样的重定向,如果我可以减少冗余,那就太好了。
答案 0 :(得分:0)
我认为没有办法在单一规则中实现这一目标。如果这样的事情是可能的,我希望看起来比你在这里的两条简单线条更加扭曲。
但是,我使用的另一种方法可能会使您的项目受益。我的nginx配置是从模板生成的。每次启动或重新启动服务器时,“init”脚本都会运行Perl脚本,这些脚本会从配置文件中填充模板。然后Nginx“包含”此文件。这在生产中使用并且运作良好。
此解决方案为您提供了另一种选项,可以减少配置nginx所需的时间,同时仍然为您提供可读rewrite
指令。