【问题标题】:Php redirect 404 to closest url in mysql databasephp重定向404到mysql数据库中最近的url
【发布时间】:2013-06-22 17:26:24
【问题描述】:

Google 在 Google Webmaster Tools 中收集了大约 30,000 个 404 URL,我一直在手动重定向其中的很多,并使用一些 regex/explode() 来处理其中的一些,但我似乎无法制定规则涵盖一切。

当 404 即将发生时,我希望我的 404 php 脚本检查我的现有 url 表以获得最接近的匹配并重定向到它。

例如,如果错误 url 是“http://www.example.com/category-somenonexistingpart-someactuallyexistingpart-somejibberish-1234.htm”,我希望我的数据库返回与错误 url 最相似的现有 url =“http://www.example.com/category-someactuallyexistingpart.htm

这可以吗?这是个好主意还是坏主意?

【问题讨论】:

    标签: php mysql redirect http-status-code-404


    【解决方案1】:

    首先,创建一个 404.php 页面并让 .htaccess 在此处重定向所有 404。然后,使用$_SERVER(不记得具体的键),您可以解析请求的 URI,将其拆分,然后搜索 DB...但是您可能会注意到 DB 上的负载增加了。

    【讨论】:

    • 您能否详细说明“拆分它,然后搜索数据库”部分?我已经设置了脚本来进行一些手动重写。
    • 好的,谢谢。我将尝试使用explode() 拆分url 并搜索单个字符串并获取与最多子字符串匹配的url。我不确定如何使用单个 sql 查询来执行此操作 - 或者将展开的数组循环到返回单个 URL 的查询中。我会尝试这个策略,但任何帮助将不胜感激:)
    猜你喜欢
    • 1970-01-01
    • 2022-12-07
    • 1970-01-01
    • 2013-06-12
    • 1970-01-01
    • 2019-03-06
    • 1970-01-01
    • 2014-01-28
    • 2012-02-15
    相关资源
    最近更新 更多