首页 > 技术分享 > LNMP|WAMP
收藏

Nginx禁止随意访问项目内的PHP文件

09/27 14:34
大潇博客 原创文章,转载请标明出处

生产环境下,外部若能随意访问项目内的PHP文件,会产生比较大的安全隐患,所以通过Nginx实现控制访问,是个很好的解决方案


比如我们设置为除index.php外,其它php文件均不能访问

set $pfn "1";

#获取访问的PHP文件名

if ( $uri ~ (.*)\.(php|php5)) {

set $phpfilename $1;

}

#非PHP文件可以直接访问

if ( $phpfilename ~ ^$) {

set $pfn "${pfn}0";

}

#PHP文件,仅支持以index.php为入口

if ( $phpfilename ~ index) {

set $pfn "${pfn}0";

}

#非法访问,跳转404页面

if ( $pfn != "10")

{

rewrite ^(.*)$ http://$host/404.html parmanent;

#或者

rewrite ^(.*)$ /404.html last;

}


添加其它可访问的php文件

if ( $phpfilename ~ admin) {

set $pfn "${pfn}0";

}


这样即使项目内被植入其它木马文件,也能有效减少成为肉鸡的可能。


打赏

阅读排行

大家都在搜

博客维护不易,感谢你的肯定
扫码打赏,建议金额1-10元
  • 15601023311