服务热线
1888888888
作者:文煞发布时间:2023-07-10分类:Zblog笔记浏览:393
ZBLOG实现指定分类下文章蜘蛛抓取正常用户404,在ZBLOG中,有时候我们希望搜索引擎能够正常地抓取到某个特定分类下的文章,但对于普通用户来说,浏览这些文章时却会出现404错误。我们可以通过判断代码来实现此功能。
请按照以下方式进行修改和完善:
<?php die();?> // 结束脚本运行,避免直接访问模板文件 {if $article.Category.ID =='8'} // 判断文章所属的分类ID是否等于8 {php} // 进入PHP代码块 $useragent = addslashes(strtolower($_SERVER['HTTP_USER_AGENT'])); // 获取当前访问用户的User-Agent信息,并转化为小写形式并进行转义处理,保存到变量$useragent中。 $bot=''; // 定义一个变量$bot来存储搜索引擎识别结果,默认为空字符串。 if (strpos($useragent, 'googlebot') !== false){$bot = 'Google';} // 使用 strpos 函数判断 User-Agent 中是否包含 'googlebot' 字符串,并将搜索引擎标识设置为 "Google"。 elseif (strpos($useragent,'mediapartners-google') !== false){$bot = 'Google Adsense';} // 如果 User-Agent 包含了 'mediapartners-google' 字符串,则是 "Google Adsense" 搜索引擎。 {/php} {if $bot != ''} // 判断搜索引擎标识变量是否不为空 {template:header} <!-- 加载头部模板 --> {if $article.Type==ZC_POST_TYPE_ARTICLE} <div class="container"> <h1>{$article.Title}</h1> <!-- 显示文章标题 --> {$article.Content} <!-- 显示文章内容 --> </div> {else} <!-- 其他页面模板 --> {/if} {template:footer} <!-- 加载底部模板 --> {else} <p style="padding:50px;text-align:center;">404 NOT FOUND!</p > // 如果不是搜索引擎的访问,返回 "404 Not Found" 错误提示。 {/if} {else} # 可以继续添加其他栏目。 {/if}
这段代码实现了对文章所属分类ID为8的判断,并通过识别HTTP请求中的User-Agent字段来判断当前访问者是否为搜索引擎蜘蛛。如果是搜索引擎,则正常显示文章内容;如果不是搜索引擎,则返回一个"404 Not Found"错误页面。
在这里,我们首先通过识别HTTP请求中的User-Agent字段来判断访问者是搜索引擎蜘蛛还是普通用户。如果是搜索引擎的访问,则会正常显示文章内容;如果是普通用户访问,则返回一个404错误页面。
需要注意:代码中提供了一些示例的搜索引擎蜘蛛识别方式,但考虑到实际情况可能有所变化,请根据具体情况增加或修改相应的搜索引擎识别部分。
由于部分虚拟主机用户建设违法网页,导致原IP被封禁,请及时解析域名到新的IP地址:45.15.10.56!同时遵守我国法律法规,并保留将相关传播违法信息者的联系信息提供给警方的权利!
分享:
支付宝
微信