如何在nginx上阻止某些类型的所有文件扩展名

17 nginx

我在nginx前端后面运行了许多网站.我的所有网站都在Python/Django中.我在日志中看到很多黑客为各种php应用程序爬行 - 我想在nginx上阻止它们(返回404),而不会让我们点击我的应用程序服务器.

我想在我的nginx conf文件中全局执行此操作,因此它适用于我所有特定于站点的配置.

那么,我该怎么做:

  1. 对于.php类型的所有扩展名返回404
  2. 返回404以获取某些字符串的部分匹配,例如"phpmyadmin"

Day*_*ayo 22

尝试:

location ~ (\.php$|myadmin) {
    return 403;
}
Run Code Online (Sandbox Code Playgroud)


Ale*_*rov 6

location必须server只出现在里面,不允许在里面http.

因此,唯一的选择是创建一个包含公共位置的文件,并将include其放入您server的文件中.