首页 > 软件服务 > WEB软件 > 使用NGINX限制指定IP允许POST访问方法

使用NGINX限制指定IP允许POST访问方法

WEB软件

一.问题情况

由于程序代码漏洞造成网站被入侵被黑的问题不在少数,但是又由于php的eval函数无法禁止使用,因为程序代码中还有调用.就想到了能否禁止POST上传来限制部分入侵上传.如果网站前台有用到POST方法的话就不要限制了.会影响正常功能.

二.解决办法

服务器使用nginx做web服务提供,就写一个if判断用来限制指定IP可以POST HEAD等操作,其他IP都拒绝.

set $test 0;设置一个变量$test初始数值0

$request_method !~* GET判断请求类型不是GET则set $test "${test}1"给$test数值追加1

$remote_addr !~* "(192.168.0.2)"判断IP不为192.168.0.2则set $test "${test}2"给$test数值追加2

最后判断$test是否为012,如果是则返回403.这样就只有192.168.0.2这1个IP可以正常POST数据了.