我已经看了大约5个大网站(重定向到赞助商)的重定向页面的源代码。
其中约有4人正在使用这些不同的Javascript重定向:
<script type="text/javascript">
window.location = 'http://www.destination.com';
</script>
OR
<script type="text/javascript">
setTimeout( function() {
window.location.replace('http://www.destination.com');
}, 1200);
</script>
OR
<script type="text/javascript">
$(function () {
setTimeout(function () {
Redirect();
}, 1500)
});
function Redirect() {
window.location = $('#redirect-to').val();
}
</script>
OR
<script type='text/javascript'>
window.location.href='http://www.destination.com'
</script>
一个人正在使用HTTP META REFRESH:
<META HTTP-EQUIV='refresh' CONTENT='0;URL="http://www.destination.com"' />
问题:
因为我知道PHP,特别是重定向如:
header( "refresh:0;url=http://www.destination.com" );
源代码中“隐形”,我想知道:
有没有办法判断PHP重定向是否也在这些页面上同时使用?
因为上面的代码存在 - 您认为PHP重定向是否被使用?难道这些代码只是在PHP不起作用的情况下“后退”吗?
如果是这样,为什么需要回退,这样一个简单的PHP重定向会出现什么问题呢?
如果没有,那么为什么web deveploper选择使用JS / META REFRESH而不是PHP?与JS / META相比,PHP有什么缺点吗?
谢谢!
修改
我不认为在重定向时包含延迟重定向,显示内容或运行各种脚本,可以作为使用JS / META而不是PHP的动机,因为这可以在PHP中完成,以此代码为例:
<?php
header( "refresh:10;url=http://www.domain.com" );
?>
<!doctype html>
<html>
<head>
</head>
<body>
Redirecting you.
<script type="text/javascript">code</script><noscript>code</noscript>
</body>
</html>
答案 0 :(得分:2)
实际上没有PHP重定向这样的东西。有一个HTTP重定向,您可以使用PHP(以及许多其他技术)将其发送到浏览器。
有没有办法判断PHP重定向是否也在这些页面上同时使用?
除非您使用明确忽略HTTP重定向的工具(并且您知道自己是否存在),否则您将看到重定向资源而不是原始资源。
因为上面的代码存在 - 您认为PHP重定向是否被使用?难道这些代码只是在PHP不起作用的情况下“后退”吗?
没有
如果是这样,为什么需要回退,这样一个简单的PHP重定向会出现什么问题呢?
如果网址错误,则不会出现任何问题。
如果没有,那么为什么web deveploper选择使用JS / META REFRESH而不是PHP?与JS / META相比,PHP有什么缺点吗?
我可以考虑使用文档级重定向的唯一原因是: