生产环境下,外部若能随意访问项目内的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) {
#非法访问,跳转404页面
if ( $pfn != "10")
{
rewrite ^(.*)$ http://$host/404.html parmanent;
#或者
rewrite ^(.*)$ /404.html last;
添加其它可访问的php文件
if ( $phpfilename ~ admin) {
这样即使项目内被植入其它木马文件,也能有效减少成为肉鸡的可能。
上一篇:Linux服务端指定PHP版本,宝塔切换PHP默认版本
下一篇:debian添加PHP源