我们最近做了一个从“自定义 CMS”迁移(从头开始编码)到我们当前的技术新闻/评论网站 MuyComputerPRO,我们几周前在 WordPress 中安装了该网站。
迁移过程漫长而复杂,我们现在面临的附带损害是:旧的重复 URL(稍后会详细介绍)不起作用,给出 404 错误页面。
旧 CMS 动态生成 URL,这些永久链接不是永久的。链接的最后一部分是字母数字代码,也可能会因文章不同而有所差异,所以同一个网页可以有多个不同的 URL。我知道。我来晚了。
我们设法获取了分配给每篇文章的“最后一个”永久链接,并将此永久链接设置为数据库迁移后在 WordPress 上使用的永久链接。这样,每篇旧文章至少有一个好的 URLGoogle 已经知道了。
问题是,其余的重复 URL 都丢失了,Google 网站管理员工具注意到了这一点,并给出了一份报告数千个 404 错误在那些重复的链接上(我们的数据库有超过 12,000 篇文章)。
我认为唯一的解决办法是创建 301 重定向。我们的网络服务器是 Nginx,虽然我已经研究过如何在 Nginx 中实现这一点,但当前的解决方案并不适合我们的模型。
错误/重复 URL 的示例:
www-muycomputerpro-com/Actualidad/Protagonistas/Nueva-estructura-de-SAP/_wE9ERk2XxDBuybOru8KSMQ5WAzIEAjFyaz70NzGocxqh0Aam7PBrCxu9Dl2Y0RcK
好的是
www-muycomputerpro-com/Actualidad/Protagonistas/Nueva-estructura-de-SAP/_wE9ERk2XxDBuybOru8KSMW2WfV_v9dGn6boQF-rm0B25JbFBs4Bqve7uMmhtXVNn
如你所见,最终的代码是必须更改的,并且我担心没有“通用”的 301 重定向规则为了那个原因。
我们是否必须指定逐个好的和坏的 URL?我们可以这样做(Wordpress 有一个插件叫重定向,可以让你以简单的方式做到这一点),但这会有点麻烦 :(
请帮忙!!
答案1
我的建议是编写一个包含 nginx 重定向规则的文件,并将其包含在服务器配置中。您也可以使用脚本自动生成规则。
rewrite /Actualidad/Protagonistas/Nueva-estructura-de-SAP/_wE9ERk2XxDBuybOru8KSMQ5WAzIEAjFyaz70NzGocxqh0Aam7PBrCxu9Dl2Y0RcK /Protagonistas/Nueva-estructura-de-SAP/_wE9ERk2XxDBuybOru8KSMW2WfV_v9dGn6boQF-rm0B25JbFBs4Bqve7uMmhtXVNn permanent
创建一个包含类似这些行的文件并将include
它们添加到配置中。
但是是的,你是对的,除非 URL 末尾的这个代码可以通过正则表达式或类似的东西生成,否则没有办法使其自动化。