在PHP中,301重定向是一种HTTP状态码,表示请求的资源已经永久移动到新的URL。服务器返回此响应时,会自动将浏览器重定向到新的URL。
<meta>
标签实现。.htaccess
)或PHP代码实现。在PHP中,可以通过检查HTTP响应头中的Location
字段来获取301重定向的目标URL。以下是一个示例代码:
<?php
$url = 'http://example.com/old-page';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); // 不自动跟随重定向
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode == 301) {
$redirectUrl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
echo "301 Redirected to: " . $redirectUrl;
} else {
echo "No redirect or not a 301 redirect.";
}
curl_close($ch);
?>
如果在获取301跳转地址时遇到问题,可能是以下原因:
CURLOPT_FOLLOWLOCATION
设置为0,以防止自动跟随重定向。通过上述代码和参考链接,你应该能够成功获取301跳转地址,并解决相关问题。
领取专属 10元无门槛券
手把手带您无忧上云