Redirect 针对新链接结构的nginx重写

Redirect 针对新链接结构的nginx重写,redirect,nginx,url-rewriting,url-redirection,Redirect,Nginx,Url Rewriting,Url Redirection,我刚刚将服务器从apache移到了nginx,将主站点从joomla移到wordpress(现在速度要快得多,但我花了两个月的时间学习nginx,测试新配置等)。剩下的唯一问题是新的链接结构 有人能帮我把旧的链接改写成新的吗 这是我的链接结构: 旧的> 新增> 在大多数情况下,主文本保持不变,但帖子id号已更改,并且末尾没有.html。http>https重定向已经在nginx配置中了。单用nginx无法做到这一点——nginx怎么知道Joomla的旧ID是什么,WordPress的新ID是什么

我刚刚将服务器从apache移到了nginx,将主站点从joomla移到wordpress(现在速度要快得多,但我花了两个月的时间学习nginx,测试新配置等)。剩下的唯一问题是新的链接结构

有人能帮我把旧的链接改写成新的吗

这是我的链接结构:

旧的>

新增>


在大多数情况下,主文本保持不变,但帖子id号已更改,并且末尾没有.html。http>https重定向已经在nginx配置中了。

单用nginx无法做到这一点——nginx怎么知道Joomla的旧ID是什么,WordPress的新ID是什么?听起来你的过渡过程没有正确完成

但是,如果您确实有一个旧URL和相应的新URL的列表,那么可以使用nginx中的
map
指令来提供这样的列表

map $uri $new_uri {
    /this-is-just-some-text-1234.html /this-is-just-some-text-09878;
}

if ($new_uri) {
    return 301 $new_uri;
}
参考资料: