我需要阻止程序执行重定向,这样我就可以看到敏感信息
<?php $redirect_url = 'page2.php'; header("Location: " . $redirect_url); ?> <div id="demo">This is sensitive information</div>
我希望代码保持在同一页,而不重定向到page2我想使用终端或外部命令来完成,假设我不控制该站点。
7fyelxc51#
你可以使用curl,默认情况下它不跟随重定向。参见Is there a way to follow redirects with command line cURL?
curl mysite.com
yyhrrdl82#
除非这是一个过于简化的真实的场景的例子,否则网站无论如何都会泄露信息。PHP脚本在设置头部后不会die(),因此将继续执行并输出所有内容。设置头部不会停止PHP脚本,它只是向客户端发送一个HTTP响应头(在这种情况下,这表明它可能希望重定向到所提供的URL,而不是显示响应正文)。头,加上脚本输出的任何其他内容,都被发送到客户端,客户端,一旦它接收到服务器提供的所有内容,然后决定如何处理它。重定向将意味着内容在浏览器的主窗口中不可见(因为浏览器一旦接收到重定向标头,就会跟随重定向标头),但您可以通过查看浏览器的网络工具中对该请求的原始响应来看到它,或者通过从非浏览器HTTP工具(如Postman或cURL)请求页面,这些工具可以配置为不自动跟随重定向。
die()
tjjdgumg3#
重定向逻辑在这一行header("Location: " . $redirect_url);中你可以把它注解掉
header("Location: " . $redirect_url);
<?php $redirect_url = 'page2.php'; // header("Location: " . $redirect_url); ?> <div id="demo">This is sensitive information</div>
3条答案
按热度按时间7fyelxc51#
你可以使用curl,默认情况下它不跟随重定向。
参见Is there a way to follow redirects with command line cURL?
yyhrrdl82#
除非这是一个过于简化的真实的场景的例子,否则网站无论如何都会泄露信息。PHP脚本在设置头部后不会
die()
,因此将继续执行并输出所有内容。设置头部不会停止PHP脚本,它只是向客户端发送一个HTTP响应头(在这种情况下,这表明它可能希望重定向到所提供的URL,而不是显示响应正文)。头,加上脚本输出的任何其他内容,都被发送到客户端,客户端,一旦它接收到服务器提供的所有内容,然后决定如何处理它。重定向将意味着内容在浏览器的主窗口中不可见(因为浏览器一旦接收到重定向标头,就会跟随重定向标头),但您可以通过查看浏览器的网络工具中对该请求的原始响应来看到它,或者通过从非浏览器HTTP工具(如Postman或cURL)请求页面,这些工具可以配置为不自动跟随重定向。
tjjdgumg3#
重定向逻辑在这一行
header("Location: " . $redirect_url);
中你可以把它注解掉