它是什么以及我们如何阻止用户代理(Bot或浏览器)访问网站[NGINX Tips]

首先,让我们从广义上看一下互联网浏览器的这个用户代理是什么以及他使用了什么。

什么是用户代理(或用户代理)?

所有这些意味着互联网浏览器(Internet Explorer,Safari,Opera,Firefoc,Chrome等)都有一个软件代理,可以在主机服务器级别与您正在访问的网站进行交互。 该软件与网站建立互联网连接,理解,验证并呈现所访问页面的内容。 简而言之,它通过访问HTTP / HTTPS协议上的特定URL来确保用户和主机服务器之间的交互,该主机服务器为用户提供所请求的网页。
用户代理在其访问的服务器的头部中包含有关用户使用的软件的信息,操作系统,浏览器的软件包的版本。 例如,Google Chrome用户代理会向服务器提供有关所用Google Chrome版本和用户操作系统的信息。

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3163.100 Safari/537.36

上面的头用户代理表示版本的 谷歌Chrome 70的 在计算机上 AMD处理器, 64位架构 操作系统 Windows 10.
你可能会想 为什么Mozilla出现在Chrome用户代理中。 这是Google(以及Microsoft在IE中)使用的一种技巧,可以帮助Chrome用户访问所有与Mozilla和Safari兼容的网站。 AppleWebKit的 是内容回放引擎。

网站管理员或Web服务器管理员可以 阻止某些用户代理的访问 在webhosts托管。 大多数情况下,设置此限制 网络机器人 (网络机器人)混乱或过度访问网站的网页。 幸运的是,这些机器人具有特定的用户代理,可以在Web服务器日志中轻松检测到。

如何使用NGINX阻止Web服务器上的用户代理访问

让我们假设我们不再允许用户使用操作系统访问该网站 Windows XP和Mozilla Firefox 5.0 Internet浏览器。

我们将文件nginx配置下面的代码添加到“server”块:

if ($http_user_agent = "Mozilla/5.0 (Windows NT 5.1; rv:52.0) Gecko/20100101 Firefox/52.0"){
return 403;
}

保存文件nginx.conf 或者特定于网站的文件,如果您使用自定义配置(gen sites-available),那么 重启NGINX服务.
所有使用Firefox 5.0(包括5.9以下所有版本)的用户 Windows XP,将被重定向到 403错误 (禁止)。

我并非偶然选择了这个示例。 从Firefox 52.9.0开始,Mozilla停止了对用户的支持 Windows XP是的 Windows Vista系统。 Microsoft分别在2014和2017中停止支持的操作系统 Windows Vista系统。

它是什么以及我们如何阻止用户代理(Bot或浏览器)访问网站[NGINX Tips]

关于作者

隐形

我热衷于对涉及小工具和IT的一切事物,我很高兴在2006上的secretthsettings.com上撰文,也很高兴与您一起发现有关计算机和macOS,Linux操作系统, Windows,iOS和Android。

发表评论