谷歌忽略了我的robots.txt

MrD*_*MrD 3 php seo robots.txt google-search

这是我的robots.txt文件的内容:

User-agent: *
Disallow: /images/
Disallow: /upload/
Disallow: /admin/
Run Code Online (Sandbox Code Playgroud)

如您所见,我明确禁止所有机器人索引文件夹images,upload并且admin.问题是我的一个客户发送了从images文件夹中删除内容的请求,因为该images文件夹中的.pdf文档出现在Google搜索结果中.任何人都可以解释我在这里做错了什么,为什么谷歌索引我的文件夹?

谢谢!

Jen*_*och 7

引用Google网站管理员文档

如果我阻止Google使用robots.txt disallow指令抓取某个网页,它会从搜索结果中消失吗?

阻止Google抓取网页可能会降低该网页的排名,或导致其随着时间的推移而完全退出.它还可以减少搜索结果下方文本中向用户提供的详细信息量.这是因为没有页面内容,搜索引擎可以使用的信息要少得多.

-

但是,robots.txt Disallow不保证页面不会出现在结果中:Google可能仍会根据传入链接等外部信息决定它是否相关.如果您希望明确阻止某个网页被编入索引,则应使用noindex漫游器元标记或X-Robots-Tag HTTP标头.在这种情况下,您不应该禁止robots.txt中的页面,因为必须抓取该页面才能看到并遵守该标记.

为文件夹中的所有文件设置带有noindex的X-Robots-Tag标头.从文件夹的Web服务器配置中设置此标头.https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag?hl=de

  1. 从Apache Config为pdf文件设置标题:

    <Files ~ "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </Files>

  2. 禁用此文件夹的目录索引/列表.

  3. 添加带有"noindex"漫游器元标记的空index.html.

    <meta name="robots" content="noindex, nofollow" /> <meta name="googlebot" content="noindex" />

  4. 通过手动使用网站管理员工具强制删除索引页面.


评论中的问题:如何禁止文件夹中的所有文件?

// 1) Deny folder access completely
<Directory /var/www/denied_directory>
    Order allow,deny
</Directory>

// 2) inside the folder, place a .htaccess, denying access to all, except to index.html
Order allow,deny
Deny from all
<FilesMatch index\.html>
        Allow from all
</FilesMatch>

// 3) allow directory, but disallow specifc environment match
BrowserMatch "GoogleBot" go_away_badbot
BrowserMatch ^BadRobot/0.9 go_away_badbot

<Directory /deny_access_for_badbot>
order allow,deny
allow from all
deny from env=go_away_badbot
</Directory>  

// 4) or redirect bots to main page, sending http status 301
BrowserMatch Googlebot badbot=1
RewriteEngine on
RewriteCond %{ENV:badbot} =1
RewriteRule ^/$ /main/  [R=301,L]
Run Code Online (Sandbox Code Playgroud)