欢迎光临 - 我的站长站,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

wordpress教程

WordPress禁止用户访问sitemap,只允许搜索引擎蜘蛛访问方法

wordpress教程 我的站长站 2023-10-14 共35人阅读

为什么要禁止?

sitemap是一个包含网站内所有链接的XML文件,它帮助搜索引擎蜘蛛快速地找到和索引网站的各个页面。然而,有时候网站所有者可能希望禁止用户访问sitemap,仅允许搜索引擎蜘蛛进行访问。

为什么有人想要禁止用户访问sitemap呢?一种可能的原因是网站拥有一些不希望用户直接访问的页面或内容,只想通过搜索引擎蜘蛛进行索引。此外,有些网站所有者可能认为禁止普通用户访问sitemap能够更好地控制网站的流量,并更好地保护敏感信息。那么如何实现禁止用户访问sitemap并允许搜索引擎蜘蛛访问呢?

方法一

function exclude_sitemap_from_non_admins()
{
// 检查是否是 sitemap 页面
if (strpos($_SERVER['REQUEST_URI'], '/sitemap.xml') !== false) {
// 检查是否是管理员
if (!current_user_can('administrator')) {
// 如果不是管理员,则禁止访问
header('HTTP/1.0 403 Forbidden');
exit;
}
}
}
add_action('init', 'exclude_sitemap_from_non_admins');
function allow_search_engines_to_access_sitemap()
{
// 检查是否是 sitemap 页面
if (strpos($_SERVER['REQUEST_URI'], '/sitemap.xml') !== false) {
// 允许搜索引擎访问
header('X-Robots-Tag: noindex, follow');
}
}
add_action('init', 'allow_search_engines_to_access_sitemap');

方法二

<?php
// 管理员除外,禁止普通用户访问此文件
if ( ! current_user_can( 'manage_options' ) ) {
header( 'HTTP/1.0 403 Forbidden' );
exit;
}
// 允许搜索引擎蜘蛛访问sitemap
function allow_robots_crawling() {
if ( ! is_admin() && is_sitemap() ) {
header( 'X-Robots-Tag: noindex,nofollow' );
}
}
add_action( 'wp_head', 'allow_robots_crawling' );
// 检查是否为sitemap页面
function is_sitemap() {
global $wp;
$current_url = home_url( add_query_arg( array(), $wp->request ) );
$sitemap_url = home_url( '/sitemap.xml' ); // 替换为你的sitemap URL
return $current_url === $sitemap_url;
}

上述代码将禁止所有用户直接访问sitemap.xml文件,只允许搜索引擎蜘蛛进行访问。需要注意的是,上述方法并不能完全阻止用户访问sitemap.xml文件。由于搜索引擎蜘蛛在索引网站时会直接访问sitemap.xml文件,因此技术水平较高的用户仍然可以通过查看网页源代码或其他工具来找到并访问sitemap.xml文件。然而,对于大多数普通用户来说,上述方法已经足够有效地限制了对于sitemap.xml文件的访问。

综上所述,禁止用户访问sitemap并允许搜索引擎蜘蛛访问可以通过设置Robots.txt文件和.htaccess文件来实现。虽然无法完全阻止用户访问sitemap.xml文件,但对于大多数普通用户来说,上述方法已足够保护敏感信息和控制网站流量


相关专题
sitemap
sitemap
2023-10-14 26

sitemap是网站地图,sitemap可以让搜索引擎更简单的了解网站结构,并能让搜索引擎蜘蛛快速爬取到网站的主要内容.所以sitemap是网站优惠非常重要的一步,这里我的站...

相关推荐
  • 搜索引擎
  • sitemap教程
  • 移动搜索引擎的未来

    随着移动端的崛起,我们也不得不提高移动端的重视。稍微大型点的站点都有自己的移动端:APP、wap网站等,但很多人都并未对移动端搜索引擎重视。下面我们来谈谈移动端搜索引擎优化是有多么重要吧。下面我就结合百度搜索主人架构师的一些讲话,结合百度站长平...

    网站优化 623 7年前
  • 即今日头条之后 微信也推出自家搜索引擎“微信搜一搜”

    我们都知道国内搜索引擎市场自从谷歌退出后,一直都是百度搜索一家独大。期间也有SOSO、360搜索、神马搜索等等一些兴起搜索引擎要挑战百度搜索,但大部分都没什么效果。从目前搜索引擎使用统计来看,百度搜索引擎还是占有80%份额,剩下的20%才是其他搜索引...

    网络新闻 504 4年前
  • 搜索引擎汇总,总有一款适合你
    搜索引擎汇总,总有一款适合你

    虽然目前百度在中国大陆是占有74%左右的占有率,但是放大到世界范围内,只不过区区1.1%,因为它搜索的答案并不是我们想要的答案,随着越来越多的搜索引擎加入,百度的市场份额还会被压缩,我们拭目以待。搜...

    在线工具 875 4年前
  • .net站内搜索引擎源码
    .net站内搜索引擎源码

    站内搜索引擎源码介绍搜易站内搜索引擎5.9,高性能,高质量的站内搜索解决方案,面向已有站点,希望提升站内搜索质量和搜索速度的站长。也可以用于多异构系统或多站点实现站群统一搜索。同时我们基于搜...

    .net源码 144 4年前
  • 分享两款自用的蓝奏云搜索引擎工具
    分享两款自用的蓝奏云搜索引擎工具

    蓝奏云非常好用,不限速,但是搜索蓝奏云上面的内容就不容易,蓝奏云官网没有搜索功能,这时候就需要第三方搜索工具了。我的站长站分享过几款软件版的蓝奏云搜索工具,很是麻烦,我自己都懒得用了。去网上找...

    在线工具 21352 3年前
  • 帝国CMS网站地图sitemap教程

    增加自定义页面文件名及存放目录:../../sitemap/sitemap.xml <?='<?xml version="1.0" encoding="UTF-8"?>'?> <urlset xmlns="htt

    帝国cms教程 521 10年前
  • 帝国cms利用灵动标签制作sitemap.xml网站地图方法

    帝国cms利用自定义页面”来创建sitemap.xml地图的方法第一步:在后台找到自定义页面,添加自定义页面,然后按照一下截图填写好。其中自定义页面的内容如下,可直接复制然后修改成你自己网站地址。<?=&#39;<?xml version="1.0" encoding="UTF-8"?>&#39;?><ur...

    帝国cms教程 227 5年前
  • 百度站长工具取消sitemap索引型sitemap文件提交

    sitemap提交方式优化公告2020-07-08 15:26:47尊敬的搜索合作伙伴:为了提升sitemap文件的处理效率,即日起搜索资源平台的普通收录和死链提交工具均不再支持索引型sitemap文件(即xml文档嵌套xml文档)。已提交的索引型文件不予处理,且子文件会占用相应工具的...

    网站优化 368 4年前
  • 自动生成sitemap地图php代码

    自动生成sitemap地图php代码,无需调用数据库,适用于百度站长提交。需要php的环境,本代码是通过php运行的。自动生成sitemap代码<?php$dom = new DOMDocument("1.0", "utf-8");header("Content-Type: text/xml");$root = $dom->createElement("urlset");...

    php教程 78 3年前
  • PHP生成sitemap网站地图代码

    网站地图生成代码<?php$dom = new DOMDocument("1.0", "utf-8");header("Content-Type: text/xml");$root = $dom->createElement("urlset");$dom->appendChild($root);for ($i = 0; $i <= 998; $i++) {$track = $dom->create...

    php教程 113 3年前