如何阻止搜索引擎抓取整个网站?

Iai*_*son 14 security .htaccess robots.txt

我想阻止搜索引擎抓取我的整个网站.

我有一个公司成员使用的Web应用程序.它托管在Web服务器上,以便公司的员工可以访问它.没有其他人(公众)需要它或发现它有用.

因此,我希望添加另一层安全性(理论上),以通过完全取消所有搜索引擎机器人/抓取工具对其的访问来尝试防止未经授权的访问.让谷歌索引我们的网站以使其可搜索从商业角度来看是没有意义的,只是为黑客添加了另一种方式来首先找到网站来尝试破解它.

我知道robots.txt你可以告诉搜索引擎不要抓取某些目录.

是否有可能告诉机器人不要抓取整个网站而不必列出所有不爬网的目录?

最好robots.txt用.htaccess或其他方法完成或最好吗?

Ulr*_*lha 12

最好用robots.txt文件处理,因为只有机器人尊重文件.

要阻止整个站点,请将其添加到站点robots.txt的根目录中:

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

要限制其他人访问您的网站,.htaccess最好是,但您需要按IP地址定义访问规则.

以下是.htaccess限制除您公司IP以外的所有人的规则:

Order allow,deny
# Enter your companies IP address here
Allow from 255.1.1.1
Deny from all 
Run Code Online (Sandbox Code Playgroud)


Ilm*_*nen 9

使用robots.txt一个网站远离搜索引擎索引有一个鲜为人知的问题:如果有人从谷歌索引的任何页面链接到你的网站(无论如何,谷歌都必须找到你的网站robots.txt),Google可能仍会将链接编入索引并将其显示为搜索结果的一部分,即使您不允许他们获取链接指向的网页.

如果这对您来说可能是一个问题,那么解决方案就是使用robots.txt,而是在您网站的每个页面上包含一个robots带有值的元标记noindex,nofollow.您甚至可以.htaccess使用mod_headersX-Robots-TagHTTP标头在文件中执行此操作:

Header set X-Robots-Tag noindex,nofollow
Run Code Online (Sandbox Code Playgroud)

该指令将标题添加X-Robots-Tag: noindex,nofollow到它应用的每个页面,包括非HTML页面,如图像.当然,您可能也希望包含相应的HTML元标记,以防万一(它是较旧的标准,因此可能更广泛支持):

<meta name="robots" content="noindex,nofollow" />
Run Code Online (Sandbox Code Playgroud)

请注意,如果您这样做,Googlebot仍会尝试抓取它找到的任何链接到您的网站,因为它需要在看到标头/元标记之前获取该网页.当然,有些人可能会认为这是一个功能而不是错误,因为它可以让您查看访问日志,看看Google是否找到了指向您网站的链接.

无论如何,无论你做什么,请记住,很难将"秘密"网站保密很长时间.随着时间的推移,你的一个用户一不小心就会泄露链接到该网站的概率接近100%,而如果有任何理由认为有人有兴趣在寻找的网站,你应该假设他们的意志.因此,请确保您还在您的站点上放置了适当的访问控制,使软件保持最新并对其进行定期安全检查.

  • 这类似于提高家中的安全性,在门窗上贴上一个标语:"窃贼,不要看这个房子".窃贼说:"哈哈". (3认同)