某些网站系统需要用户上传图片等文件到某些目录下,难免程序有些漏洞,导致用户上传了php、cgi等等可执行的文件,导致网站陷入非常为难的境地. 此时我们可以通过nginx来禁止用户访问这些目录下的可执行文件。
nginx配置:
location ~ ^/(uploads|images)/.*/.(php|php5|jsp)$ { deny all; }
tips:在目录uploads、images目录下面的所有php、jsp都不能访问。
也有人会选择这样写:
location ~ ^/(uploads|images)/.*/.(php|php5|jsp)$ { return 403; }
这样也是一样的,如果配置了403页面,会跳转过去。
403页面配置:
error_page 403 http://www.webyang.net/public/404.html;
还有一些问题也需要注意,就是我们可能在站点的任一目录下放置了.sql文件,我们可以通过下面的方式禁止浏览器访问。
location ~.*/.sql { deny all; }
这样,任一目录的sql文件都不会被用户访问到了。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/98620.html