Php 防止机器人处理来自网站的图像
我有一个用PHP技术创建的网站,我想阻止机器人处理来自网站的图像。防止机器人处理来自网站的图像的最佳方法是什么 请确保它不会损害SEO。Php 防止机器人处理来自网站的图像,php,Php,我有一个用PHP技术创建的网站,我想阻止机器人处理来自网站的图像。防止机器人处理来自网站的图像的最佳方法是什么 请确保它不会损害SEO。 请确保这不会影响Spyder和Crawler为站点编制索引。您可以将robots.txt配置为允许某些机器人,但不允许其他机器人: 例如: 这只是一个例子。您还可以允许其他行为良好的机器人 但这对那些只忽略robots.txt的行为不端的机器人来说毫无意义。虽然身份验证有点帮助(您可以通过帐户限制图像访问)。您可以将robots.txt配置为允许某些机器人,但
请确保这不会影响Spyder和Crawler为站点编制索引。您可以将robots.txt配置为允许某些机器人,但不允许其他机器人: 例如: 这只是一个例子。您还可以允许其他行为良好的机器人
但这对那些只忽略robots.txt的行为不端的机器人来说毫无意义。虽然身份验证有点帮助(您可以通过帐户限制图像访问)。您可以将robots.txt配置为允许某些机器人,但不允许其他机器人: 例如: 这只是一个例子。您还可以允许其他行为良好的机器人
但这对那些只忽略robots.txt的行为不端的机器人来说毫无意义。对于他们来说,确实没有解决方案,不过身份验证会有一点帮助(你可以通过帐户限制图像访问)。正如其他人所说,如果可能,首先告诉机器人程序他们无法使用robots.txt访问图像。行为良好的机器人会遵守这一点 搜索“防止热链接”。标准方法是使用mod_重写规则,在您的域中阻止对图像文件的请求,而无需引用。这将阻止大多数机器人 您可以使用和最近的文件匹配数百个常见爬虫的用户代理字符串。这在共享主机上并不常见,但是如果您阅读了手册中的注释,您应该会发现一个可以从自己的代码运行的get_浏览器实现
所有这些都会影响SEO,因为主要的搜索引擎都有图像搜索。它还将影响新的谷歌网页预览,当鼠标悬停在搜索结果上时,会显示网页的屏幕截图,因为在创建屏幕截图时,你会阻止机器人看到页面上的图像。正如其他人所说,如果可能,首先告诉机器人他们无法使用robots.txt访问图像。行为良好的机器人会遵守这一点 搜索“防止热链接”。标准方法是使用mod_重写规则,在您的域中阻止对图像文件的请求,而无需引用。这将阻止大多数机器人 您可以使用和最近的文件匹配数百个常见爬虫的用户代理字符串。这在共享主机上并不常见,但是如果您阅读了手册中的注释,您应该会发现一个可以从自己的代码运行的get_浏览器实现
所有这些都会影响SEO,因为主要的搜索引擎都有图像搜索。它还将影响新的Google Web预览,当鼠标悬停在搜索结果上时会显示网页的屏幕截图,因为在创建屏幕截图时,您将阻止机器人看到页面上的图像。不确定它是否有效,但如果您的所有图像都在/images/文件夹中,您可以设置
User-agent: *
Disallow: /images/
不确定它是否有效,但如果您的所有图像都在/images/文件夹中,也许您可以设置
User-agent: *
Disallow: /images/
一些潜在的解决方案可能包括使用Flash显示图像或在页面加载后通过Javascript动态加载图像。您还可以考虑通过IP节流页面负载,以防止极其快速的访问,使机器人在刮削站点时慢得多。不过,这些解决方案有明显的缺点
在你的网站上没有防止内容被刮取的故障保护方法。一个有能力的开发人员,如果想刮取一个他可以访问的站点,那么他可以毫不费力地做到这一点。最好的办法是为内容添加水印或将其放在付费墙后面。一些潜在的解决方案可能包括使用Flash显示图像或在页面加载后通过Javascript动态加载图像。您还可以考虑通过IP节流页面负载,以防止极其快速的访问,使机器人在刮削站点时慢得多。不过,这些解决方案有明显的缺点
在你的网站上没有防止内容被刮取的故障保护方法。一个有能力的开发人员,如果想刮取一个他可以访问的站点,那么他可以毫不费力地做到这一点。最好的办法是给内容加上水印,或者把它放在付费墙后面。这很难,没有什么简单的方法可以做到,不过你可以尝试让机器人更难做到 现在我想到的是:
- 使用javascript创建图像链接(将强制机器人在页面上执行javascripts)
- 使用css精灵(即,将多个图像打包成一个图像),这可能会降低机器人的可用性(例如,如果他们只是想在页面上获取并重新显示图像,那么当多个图像打包成一个图像时,在他们的网站上会显得有点难看)
- 检查http\u referer并仅在http\u referer是允许的域时提供正确的映像
- 在你的域名的图片上方加上一个水印,这样对其他网站就没那么有用了
- 使用javascript创建图像链接(将强制机器人在页面上执行javascripts)
- 使用css精灵(即,将多个图像打包成一个图像),这可能会降低机器人的可用性(例如,如果他们只是想在页面上获取并重新显示图像,那么当多个图像打包成一个图像时,在他们的网站上会显得有点难看)
- 检查http\u referer并仅在http\u referer是允许的域时提供正确的映像
- 在你的域名的图片上方加上一个水印,这样对其他网站就没那么有用了