Gar*_*nay 33
决定编写自己的php函数,实现javascript重定向.请参阅下面的代码.
function redirect($url)
{
$string = '<script type="text/javascript">';
$string .= 'window.location = "' . $url . '"';
$string .= '</script>';
echo $string;
}
Run Code Online (Sandbox Code Playgroud)
我认为输出缓冲不是一种选择,因为您提到数据已发送。使用元重定向,或输出处理此问题的 JavaScript。
前者可以通过在该<head>部分添加以下内容来实现
<meta http-equiv="refresh" content="0; url=http://example.com/">
Run Code Online (Sandbox Code Playgroud)
对于后者,编写如下内容可能会有所帮助:
<script type="text/javascript">
window.location = "http://example.com/";
</script>
Run Code Online (Sandbox Code Playgroud)
将http://example.com/替换为您的目标 URL。请注意,如果确实发送了某些数据,则后者可能更易于实现。
警告:这两种方法都可以在客户端被阻止,但从技术上讲,301 和 302 重定向也可以。
您可以使用Javascript或Meta标签.但是,如果您不希望修复代码以在处理后显示输出,则只需output_buffering在站点的.htaccess文件中打开即可.
php_flag output_buffering on
你将把你的.htaccess文件中的内容打开.即使您在处理过程中输出内容,它也会允许重定向.这是因为输出缓冲区将缓冲区保存到最后,因此之前没有数据发送.