现在一般都是使用黑名单的方法过滤非法字符,不过黑名单也有它的不足。怎么才能用白名单过滤呢
在.htaccess里定义
<</>Files ~ “.*”>
Deny from all
<</>/Files>
<</>FilesMatch “(1.txt)|(2.txt)”>
Allow from all
<</>/FilesMatch>
这样就只允许访问1.txt和2.txt
不过在wordpress环境下如何进行设置呢,(因为本站用的就是WP)
<</>Files ~ “.*”>
Deny from all
<</>/Files>
<</>FilesMatch “(.*.jpg)|(.*.gif)|(.*.png)|(.*.bmp)|(wp-.*)|(index.php)”>
Allow from all
<</>/FilesMatch>
这样设置就是只允许访问*.jpg *.gif *.png *.bmp wp-* 以及index.php
这样设置和WP结构一样,因为WP的结构就是wp-*
如果有人非法上传了例如1fhds034hj2k4234.php的非法文件,也无法运行,因为他不在白名单里,在
<</>Files ~ “.*”>
Deny from all
<</>/Files>
的时候就已经过滤掉了
评论 (0)