首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在PHP/Javascript中向前获取301/302的源url

在PHP和JavaScript中,可以使用HTTP头部来获取301/302的源URL。当服务器返回301(永久重定向)或302(临时重定向)状态码时,会在HTTP头部中包含一个名为"Location"的字段,该字段的值即为重定向的目标URL。

在PHP中,可以使用以下代码获取301/302的源URL:

代码语言:txt
复制
<?php
$url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$headers = get_headers($url, 1);
if (isset($headers['Location'])) {
    $sourceUrl = $headers['Location'];
    echo '源URL:' . $sourceUrl;
} else {
    echo '没有重定向';
}
?>

在JavaScript中,可以使用XMLHttpRequest对象来发送HTTP请求,并通过getResponseHeader()方法获取HTTP头部信息。以下是一个示例:

代码语言:txt
复制
var xhr = new XMLHttpRequest();
xhr.open('GET', window.location.href, true);
xhr.onreadystatechange = function() {
    if (xhr.readyState === 4 && xhr.status >= 300 && xhr.status < 400) {
        var sourceUrl = xhr.getResponseHeader('Location');
        console.log('源URL:' + sourceUrl);
    } else {
        console.log('没有重定向');
    }
};
xhr.send();

这样,无论是在PHP还是JavaScript中,都可以获取到301/302的源URL。301/302重定向常用于网页跳转、URL重写等场景。对于PHP开发,可以使用腾讯云的云服务器(CVM)来部署PHP应用;对于JavaScript开发,可以使用腾讯云的云函数(SCF)来运行JavaScript代码。腾讯云的CVM和SCF都提供稳定可靠的计算资源和服务支持。

腾讯云产品相关链接:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 301跳转与URL转发[通俗易懂]

    在购买域名时,域名本身是不带有www的,但由于域名要通过DNS服务器解析后才可以使用,在这个过程中每一个域名是会指向一个web服务器ip地址,由于在很早之前网站方都会增加一个”www”的子域名来帮助客户以更多的路径访问网站,客户通常都会按照:”www.++.com”的形式来访问站点;如果你没有做这个www的解析那么”www.++.com”就不能访问,对于不懂技术或者不明白解析的客户来讲,这个问题可能会造成他不能访问你的站,因为他只是知道用带有”www”的形式访问你的站点,可能不知道”++.com”也是同样可以访问的!所以,后来也就有了更多人在延续这个做法;我们在购买空间域名时,服务商也会随手就帮你做了这个”www”的解析,当然,这个解析的服务器地址是和没有”www”相同的,造成:你用带”www”的和不带两个域名同时可以访问一个同样的内容。说白了这个问题的答案就是:能够让初次使用互联网的人更快的访问进你的网站。

    03
    领券