我們來看倆段通常對上傳目錄設(shè)置無權(quán)限的列子,配置如下:
復制代碼代碼如下:
Order Allow,Deny
Deny from all
還有網(wǎng)上那個對nginx上傳目錄無執(zhí)行權(quán)限
復制代碼代碼如下:
location ~ ^/upload/.*\.(php|php5)$
{
deny all;
}
這些配置表面上看起來是沒什么問題的,確實在windows下可以這么說。
但是*nux就不同了,大家都是知道的*nux操作系統(tǒng)是區(qū)分大小寫的,這里如果換成大寫后綴名*.phP一類就bypasss了
這里我說下我個人的解決方法:
復制代碼代碼如下:
Order Allow,Deny
Deny from all
上面的意思就是說,/var/www/upload目錄下所有php文件不區(qū)分大小寫,通過order,allow,deny原則判斷拒絕執(zhí)行php文件,對nginx同樣也是可應用的
注:st0p專門為此正則用法寫了文章,對這個正則不理解的可以參考
http://www.cdcxhl.com/article/90917.html
另外一種方法,這個我們都用過
復制代碼代碼如下:
php_admin_flag engine off
相比之下我還是看好的一種方法