在Linux,Apache,PHP网站上,我需要确保我的网站上的子目录/ cms不能被搜索引擎抓取。
请参阅网站的根目录,我安装了名为Pinnacle Cart的产品目录。他们想要一个从CMS中提取内容的新闻页面。我在一个名为/ cms的子目录中将WordPress联机,创建了一些帖子,然后使用以下代码将其引入我的Pinnacle Cart主题:
<?php require_once('../../../cms/wp-blog-header.php'); ?>
<?php $i = 1; $MAX_ARTICLES_TO_SHOW = 5; ?>
<?php while (have_posts()): the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_id(); ?>">
<h2><?php the_title(); ?></h2>
<div class="entry">
<?php the_content(); ?>
</div><!-- .entry -->
<div style="clear:both;"> </div>
<small><?php the_time('F j, Y') ?></small>
</div><!-- #post-... -->
<?php ++$i; if ($i > $MAX_ARTICLES_TO_SHOW) { break; } ?>
<?php endwhile; ?>
请注意,帖子中使用的部分图片会从/ cms中提取,我希望这些图片加载正常,但我不希望Google或任何搜索引擎关注/ cms下的任何内容。
另请注意,在/ cms的WordPress中,我检查了“不要让Google,Technorati等网站为此网站编制索引”这一设置。
我想我需要在/ cms / wp-content / themes下调整WordPress的默认主题,或者在/ cms或/(root)文件夹中设置某种.htaccess设置。站点。
答案 0 :(得分:1)
您可以将其添加到robots.txt文件中。
Disallow: /cms/
在http://www.robotstxt.org/robotstxt.html
了解更多相关信息搜索引擎和抓取工具总是可以忽略这一点(大多数大型搜索引擎都会遵循这些规则)。您也可以查看$_SERVER['HTTP_USER_AGENT']
,但这可能是假的。没有100%的方法可以阻止刮刀。
答案 1 :(得分:0)
查看robots.txt文件。这是搜索引擎在抓取您的网站之前读取的文件。在该文件中,您可以指示他们完全忽略某些目录。
答案 2 :(得分:0)
为什么不使用robots.txt 这是您放置在根目录中的文件,所有机器人都会在抓取您的网站之前将其读取。在此文件中,您可以指定不希望被爬网的目录。一些链接可以帮助您入门 http://www.robotstxt.org/robotstxt.html http://codex.wordpress.org/Search_Engine_Optimization_for_WordPress#Robots.txt_Optimization
答案 3 :(得分:0)
robots.txt是一个选项,如此处的其他答案中所述。
Disallow: /cms/
robots.txt文件的主要缺点是它们可以被忽略,或者仅仅被忽略,具体取决于机器人。
您还可以选择使用密码保护目录,这会阻止搜索引擎将页面编入索引(来自Google和Bing的示例文章)。根据您的服务器环境,您还可以禁止使用.htaccess和.htpasswd访问CMS文件夹。此方法允许用户访问Wordpress安装,但不允许访问机器人/未经身份验证的用户。
另一种选择是再次使用.htaccess
为该特定目录设置标题404或301。这显然会阻止用户访问它,所以如果你想阻止它只为机器人你可以将某些IP或用户代理字符串列入白名单,以允许真实用户看到页面和机器人接收404标题,这将阻止索引页面。