捕获所有无效 URL

2023-12-31

我最近升级了一个网站,几乎所有 URL 都发生了变化。我已经重定向了所有这些(或者我希望如此),但其中一些可能已经被我忽略了。有没有办法以某种方式捕获所有无效 URL 并将用户发送到某个页面,并以某种方式知道该人来自哪个 URL,以便我可以记录此内容并修复这些问题?我想我可以以某种方式使用 .htaccess 但不知道如何使用。我正在使用 PHP 非常感谢!


您可以使用自定义ErrorDocument http://httpd.apache.org/docs/2.2/en/mod/core.html#errordocument用 PHP 编写的处理程序,用于捕获“漏掉”的 URL:

# .htaccess file
ErrorDocument 404 /not-found.php

And in not-found.php:

switch($_SERVER['REDIRECT_URL']) {
    case '/really_old_page.php':
        header('HTTP/1.1 301 Moved Permanently');
        header('Location: /new-url/...');
    /*  As suggested in the comment, exit here.
        Additional output might not be handled well and
        provokes undefined behavior. */
        exit;
    default:
        header('HTTP/1.1 404 Not Found');
        die('404 - Not Found');
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

捕获所有无效 URL 的相关文章

  • 使用 DOJO 自动完成文本框

    我正在寻找一种使用 DOJO 进行文本框自动建议的简单方法 我将查询的数据库表 使用 PHP 脚本 以 JSON 形式返回 有超过 100 000 条记录 因此这确实不应该采用 FilteringSelect 或 ComboBox 的形式
  • 如何在 HTML / Javascript 页面中插入 PHP 下拉列表

    好吧 这是我的第二篇文章 请接受我是一个完全的新手 愿意学习 花了很多时间在各个网站上寻找答案 而且我几乎已经到达了我需要到达的地方 至少在这一点上 我有一个网页 其中有许多 javascript 函数 这些函数一起使用 google 地图
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • php下拉菜单人口

    我正在尝试编写一个 php 脚本 该脚本将根据主下拉菜单的选择填充第二个下拉菜单 我想使用 jquery 来完成所有非页面刷新的事情 但我发现现有的所有东西都很难理解和修改 你知道有什么写得很好且易于理解的东西吗 或者可能是现有的教程 下面
  • useParams 钩子在 React 功能组件中返回未定义

    该应用程序显示所有照片
  • PHP 和 NLP:嵌套括号(解析器输出)到数组?

    想要将带有嵌套括号的文本转换为嵌套数组 以下是 NLP 解析器的输出示例 TOP S NP PRP I VP VBP love NP NP DT a JJ big NN bed PP IN of NP NNS roses 原文 我喜欢一大床
  • 在 PHP 中模拟 jQuery.ajax 请求

    我必须在 PHP 中模拟 AJAX 请求 就像在 jQuery 中一样 我当前的代码在这里 原始 AJAX 调用 不得修改 ajax type POST url someFile php data data success function
  • “pdo_mysql”已禁用,我无法启用它。我在 iMac 7.1 OSX 10.6.8 上安装了 MAMP v. 3.0.4

    pdo mysql 已禁用 我无法启用它 我在 iMac 7 1 OSX 10 6 8 上安装了 MAMP v 3 0 4 在我的 phpinfo 页面上 我可以看到唯一启用的 PDO 是 sqlite 如果我查看 php 5 5 10 扩
  • PHP - 扩展 __construct

    我想知道你是否可以帮助我 我有两个类 一个扩展了另一个 B 类将由各种不同的对象扩展 并用于常见的数据库交互 现在我希望 B 类能够处理其连接和断开连接 而无需来自 A 类或任何外部输入的指示 据我了解 问题是扩展类不会自动运行其 cons
  • 将数据库中的用户 ID 添加到 Codeigniter 中的会话数据中?

    我是 CodeIgniter 的新手 在从数据库添加用户 ID 用户登录后 到会话数据时遇到问题 这是我的代码问题 之前可能会在 SOF 上被问到 在付出了所有努力之后 我问这个 登录模型
  • PHP使用auto_increment生成短唯一ID?

    我想生成一个简短的 唯一的 ID 而不必检查冲突 我目前正在做类似的事情 但是我当前生成的 ID 是随机的 并且在循环中检查冲突很烦人 并且如果记录数量显着增加 将会变得昂贵 通常担心冲突不是问题 但我想要生成的唯一 ID 是一个由 5 8
  • 如何在 Smarty 中打印 json

    我从 api 获取 json 如何使用 Smarty 打印 json Json格式 first name jinu last name mk loginid email protected cdn cgi l email protectio
  • 重新排列数组键 php [重复]

    这个问题在这里已经有答案了 我有这个数组 Array 15 gt 13 1 16 gt Mark one answer 19 gt You see a car on the hard shoulder of a motorway with
  • 获取express.js中间件请求中“#”后的url

    我需要获取服务器中间件上的 url 使用express js 我用req url但是当 url 开头时 some urlreq url 返回 与req path 有没有办法获取url之后 在express js中 No URL 中以 符号永
  • 如何解决 Laravel 8 UI 分页问题?

    我在尝试最近发布的 laravel 8 时遇到了问题 我试图找出变化是什么以及它是如何工作的 当我这样做时 我遇到了分页 laravel 8 UI 变得混乱的问题 不知何故它发生了 有人可以帮助我吗 或者经历过同样的事情 像这样我在 lar
  • Windows iis 7.0 上的 APC 不稳定

    我的 IIS 非常不稳定 因为它总是由于某种与 APC 相关的原因而重新启动 服务器的规格如下 Intel R Xeon CPU 3GHZ 3GHZ 2GB RAM 64bit APC 和服务器规格 3 1 7 dev PHP Versio
  • 使用 PHP 和 OAuth 访问 SkyDrive

    我想使用 PHP 访问 skyDrive 我想检索文件和文件夹列表 下载 上传和删除文件 我有一个 microsoft dev clientID 和 clientSecret 有人可以帮助我开始使用 OAuth 连接到 skyDrive 并
  • 如何确保在 PHP 的“foreach”循环中重置该值?

    我正在写一个简单的 PHP 页面和一些foreach使用了循环 以下是脚本 arrs array a b c foreach arrs as arr if substr arr 0 1 b echo This is b End of fir
  • Doctrine DQL 从 join 返回平面数组

    我通过 DQL 中的常规 LEFT JOIN 选择 3 个实体 它们通过连接表关联 连接表还定义了实体以及带注释的关系 查询执行没有问题 但我的结果作为平面数组返回 我期望一个包含三个实体作为每个索引的数组元素的数组 SELECT e1 e
  • 使用来自另一个数据库的选择查询更新 mysql 表

    我有两个数据库 我想用另一个数据库表中的值更新一个表 我正在使用以下查询 但它不起作用 UPDATE database1 table1 SET field2 database2 table1 field2 WHERE database1 t

随机推荐

  • 将 Python 列表写入 csv 文件

    我有一长串以下形式的清单 a 1 2 abc 3 1 2 werew 4 1 4 qew 2 即列表中的值具有不同类型 float int string 如何将其写入 csv 文件 以便我的输出 csv 文件看起来像 1 2 abc 3 1
  • 解码和重建后无法安装.apk(Apktool、Apkstudio)

    我用以下命令解码了 apk 文件apktool我没有改变任何东西 之后 我再次构建它 然后尝试安装 apk 但即使在进行一些基本更改后 我仍收到以下错误 我使用 Windows 做了什么cmd apktool d somename apk
  • 如何在ASP.NET中使用jQuery同时触发OnClick和OnClientClick事件?

    我试图在回发期间显示消息栏 我正在使用网上找到的 jQuery 脚本here http www andreyvoev com programming jquery plugin messagebar 一切都单独工作得很好 但是当 jQuer
  • StaleElementReferenceException:元素不再附加到 DOM:Selenium

    我对自动化测试完全陌生 在参考了一些教程后 我创建了一个自动化测试用例 我尝试自动化的测试用例是在单击表格标题之一后检查排序是否正确 我的自动化测试用例失败 但出现以下异常 org openqa selenium StaleElementR
  • 单击锚链接时保持 URL 不受影响

    我已经检查过这里的其他帖子 没有我正在寻找的结果 我想点击 a href about About a div Content of this div 并让它滚动到该元素 而不将 www domain com about 放入地址栏中 作为一
  • SharePoint Foundation 2013 无法安装在 Windows 8.1 或 Windows Server 2012 R2 上

    当我尝试在 Windows Server 2012 r2 上安装 Team Foundation Server 2013 的 SharePoint 扩展时 出现此错误 SharePoint Foundation 2013 无法安装在 Win
  • 进度对话框 UI 冻结/缓慢

    我有一个进度对话框 用于程序中的一部分 在后台执行时间密集型操作 但当显示该对话框时 UI 或微调器图标冻结 缓慢 犹豫 使程序看起来好像冻结了 在我的onPostExecute of my AsyncTask我关闭对话框 既然我在后台完成
  • Jackson InvalidDefinitionException:无法构造实例,因为找不到默认的无参数构造函数

    我有一个使用 Spring Boot 提供 REST 功能的应用程序 我在将 POST 响应反序列化为 POJO 时遇到问题 例外情况如下 org springframework http converter HttpMessageConv
  • 将字段添加到 Woocommerce 注册表单并在管理编辑用户中

    在 WooCommerce 中 我在帐户注册表单中添加了额外的字段 1 ADD FIELDS add action woocommerce register form start add woo account registration f
  • system()的返回值不是执行程序的返回值

    我想执行一个可执行文件 其 main 返回 2 使用system 这就是我所做的 include
  • 无法添加服务引用 - 锁定/只读

    每当我去添加服务引用时 我都会收到错误 无法添加服务引用 Servicereference1 reference 错误 无法签出当前文件 该文件可能是只读的或锁定的 或者您可能需要手动检出该文件 我的项目中已经有一个服务引用 但它以某种方式
  • 如何通过 iPhone 中的 Graph API 在 facebook 上“点赞”和“评论”?

    我正在使用 graph api 显示新闻源 我对以下问题有疑问 我想为每个新闻提要帖子提供 喜欢 功能 我想为每个新闻提要帖子提供 评论 功能 有人可以帮助我如何使用 iphone 中的图形 api 解决这个问题吗 请参考我这里的回答 如何
  • 如何识别ODF文件?

    我需要能够根据文件的内容而不是文件的扩展名来识别给定文件是 ODF 文件 ODF 文件实际上是 zip 容器中 XML 文件的集合 这意味着我无法使用该文件的幻数 因为它只会表明它是一个 zip 文件 所以我真正要问的是是否有任何文件req
  • 如何检测USB键盘是否插入和拔出

    当 USB 键盘从电脑上插入和拔出时 是否有任何守护进程 工具会触发一些信号 事件 我需要在程序中知道 USB 键盘何时插入和拔出 关于如何做到这一点有什么想法吗 udev Linux 设备管理器 是轮询硬件的管理器 当它检测到有关设备的某
  • 带有 Qt::AlignCenter 的 QPainter 无法正确居中文本

    我想做一个相当简单的绘图 在圆的中心写下两段文字 我的代码 painter gt drawText QRectF 0 0 m iSize m iSize Qt AlignCenter m sAlias n m sCode where m i
  • 会话路由#destroy 操作

    我链接到会话控制器的销毁操作 如下所示 路线 rb resources sessions only new create destroy Rails 对上面的链接进行了抱怨 没有路由匹配 action gt destroy controll
  • 使用 Linq 动态添加条件连接

    我有一个基本的搜索控件 它根据下拉列表提供的预定义搜索 过滤条件列出 CRM 中的公司 每个下拉菜单的默认选择是 全部 否则用户将选择特定的项目 我希望能够根据选择动态构建 Linq 查询 在 5 个选择器中 它们提供了我可以与 Compa
  • 使用 MockMvc 测试重定向 URL 的 HTTP 状态代码

    我想使用 MockMvc 在 Spring Boot 应用程序中测试登录过程 成功登录后 用户将被重定向到 home 为了测试这一点 我使用 Test public void testLogin throws Exception Reque
  • 数据结构中的自引用 - 检查相等性

    在我最初尝试创建不相交集数据结构时 我创建了一个Point数据类型与parent指向另一个的指针Point data Point a Point value a parent Point a rank Int 要创建单例集 Point创建它
  • 捕获所有无效 URL

    我最近升级了一个网站 几乎所有 URL 都发生了变化 我已经重定向了所有这些 或者我希望如此 但其中一些可能已经被我忽略了 有没有办法以某种方式捕获所有无效 URL 并将用户发送到某个页面 并以某种方式知道该人来自哪个 URL 以便我可以记