在SEO优化工作中,了解网站在搜索引擎中的收录状态并及时提交新内容至关重要。本文分析的PHP脚本实现了两个核心功能:
// 允许跨域请求
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json; charset=utf-8');
// 获取参数
$action = isset($_GET['action']) ? $_GET['action'] : '';
$url = isset($_GET['url']) ? $_GET['url'] : '';
脚本首先设置CORS头部允许跨域访问,并指定响应格式为JSON。这种设计使该接口可被前端应用直接调用,方便集成到Web项目中。
checkBaiduIndex()
函数通过模拟百度搜索查询来判断URL收录状态:
function checkBaiduIndex($url) {
$urlParts = parse_url($url);
$domain = $urlParts['host'];
$path = isset($urlParts['path']) ? $urlParts['path'] : '';
$query = isset($urlParts['query']) ? '?' . $urlParts['query'] : '';
// 构造百度搜索URL
$searchUrl = "https://www.baidu.com/s?wd=site:{$domain} inurl:" . urlencode($path . $query);
// 设置请求头模拟浏览器
$options = [
'http' => [
'method' => 'GET',
'header' => 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36...'
]
];
$context = stream_context_create($options);
$result = file_get_contents($searchUrl, false, $context);
// 分析搜索结果
$isIndexed = strpos($result, '没有找到与') === false && strpos($result, $domain) !== false;
return [
'success' => true,
'indexed' => $isIndexed,
'message' => $isIndexed ? '该URL已被百度收录' : '该URL未被百度收录'
];
}
技术要点:
parse_url()
解析URL获取域名和路径信息site:domain.com inurl:/path/page
submitToBaidu()
函数使用百度站长平台的API接口提交URL:
function submitToBaidu($url, $token) {
$urlParts = parse_url($url);
$domain = $urlParts['host'];
// 构造百度API接口URL
$apiUrl = "http://data.zz.baidu.com/urls?site={$domain}&token={$token}";
// 设置POST请求
$options = [
'http' => [
'method' => 'POST',
'header' => 'Content-Type: text/plain',
'content' => $url
]
];
$context = stream_context_create($options);
$result = file_get_contents($apiUrl, false, $context);
// 解析API响应
$resultData = json_decode($result, true);
if (isset($resultData['success'])) {
return [
'success' => true,
'message' => '提交成功,预计' . $resultData['success'] . '条URL将被收录',
'data' => $resultData
];
} else {
return [
'success' => false,
'message' => '提交失败: ' . (isset($resultData['message']) ? $resultData['message'] : '未知错误'),
'data' => $resultData
];
}
}
技术要点:
这种类型的接口可以轻松集成到内容管理系统中,自动化SEO监控和优化流程,大大提高网站管理效率。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。