我确定以前有人问过这个问题,但我找不到有效的解决方案。
一个网站切换了CMS服务,但是同一个域名,如何设置单页的nginx重写?
例如
旧页面
http://sitedomain.co.uk/content/unique-page-name
新页面
http://sitedomain.co.uk/new-name/unique-page-name
请注意,我不希望内容页面中的所有内容都被重定向,而只是上面提到的 url。我有大约 9 个重定向要设置,其中不适合一个模式。
谢谢!
编辑:我找到了这个似乎有效的解决方案,除了它在没有斜杠的情况下重定向:
if ( $request_filename ~ content/unique-page-name/ ) {
rewrite ^ http://sitedomain.co.uk/new-name/unique-page-name/? permanent;
}
但这重定向到:
http://sitedomain.co.uknew-name/unique-page-name/
直接引用陷阱和常见错误:征税重写:
请使用
return
而不是rewrite
永久重定向。这是我对这个用例的处理方法......理想情况下,如果可以避免,则不应使用 if 语句。像这样的东西可以工作(未经测试)。
我使用了以下解决方案:
工作一种享受。
对我来说,它在没有等号的情况下工作,如下所示:
这个对我有用。