apache,nginx上傳目錄無(wú)執(zhí)行權(quán)限的設(shè)置方法
更新時(shí)間:2010年12月19日 20:00:07 作者:
至于為什么設(shè)置上傳目錄無(wú)權(quán)限這個(gè)我就不累贅了,現(xiàn)在比較流行的web服務(wù)有iis,apache,nginx,使用操作系統(tǒng)無(wú)非是windows or *nux
我們來(lái)看倆段通常對(duì)上傳目錄設(shè)置無(wú)權(quán)限的列子,配置如下:
<Directory "/var/www/upload">
<FilesMatch ".php">
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>
還有網(wǎng)上那個(gè)對(duì)nginx上傳目錄無(wú)執(zhí)行權(quán)限
location ~ ^/upload/.*\.(php|php5)$
{
deny all;
}
這些配置表面上看起來(lái)是沒(méi)什么問(wèn)題的,確實(shí)在windows下可以這么說(shuō)。
但是*nux就不同了,大家都是知道的*nux操作系統(tǒng)是區(qū)分大小寫(xiě)的,這里如果換成大寫(xiě)后綴名*.phP一類就bypasss了
這里我說(shuō)下我個(gè)人的解決方法:
<Directory "/var/www/upload">
<FilesMatch "(?i:.php)"> //?是盡可能多的匹配.php的字符串,i是不區(qū)分大小寫(xiě),然后冒號(hào)后面跟上正則表達(dá)式
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>
上面的意思就是說(shuō),/var/www/upload目錄下所有php文件不區(qū)分大小寫(xiě),通過(guò)order,allow,deny原則判斷拒絕執(zhí)行php文件,對(duì)nginx同樣也是可應(yīng)用的
注:st0p專門為此正則用法寫(xiě)了文章,對(duì)這個(gè)正則不理解的可以參考
http://www.dbjr.com.cn/article/25673.htm
另外一種方法,這個(gè)我們都用過(guò)
<Directory "/var/www/upload">
php_admin_flag engine off
</Directory>
相比之下我還是看好的一種方法
復(fù)制代碼 代碼如下:
<Directory "/var/www/upload">
<FilesMatch ".php">
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>
還有網(wǎng)上那個(gè)對(duì)nginx上傳目錄無(wú)執(zhí)行權(quán)限
復(fù)制代碼 代碼如下:
location ~ ^/upload/.*\.(php|php5)$
{
deny all;
}
這些配置表面上看起來(lái)是沒(méi)什么問(wèn)題的,確實(shí)在windows下可以這么說(shuō)。
但是*nux就不同了,大家都是知道的*nux操作系統(tǒng)是區(qū)分大小寫(xiě)的,這里如果換成大寫(xiě)后綴名*.phP一類就bypasss了
這里我說(shuō)下我個(gè)人的解決方法:
復(fù)制代碼 代碼如下:
<Directory "/var/www/upload">
<FilesMatch "(?i:.php)"> //?是盡可能多的匹配.php的字符串,i是不區(qū)分大小寫(xiě),然后冒號(hào)后面跟上正則表達(dá)式
Order Allow,Deny
Deny from all
</FilesMatch>
</Directory>
上面的意思就是說(shuō),/var/www/upload目錄下所有php文件不區(qū)分大小寫(xiě),通過(guò)order,allow,deny原則判斷拒絕執(zhí)行php文件,對(duì)nginx同樣也是可應(yīng)用的
注:st0p專門為此正則用法寫(xiě)了文章,對(duì)這個(gè)正則不理解的可以參考
http://www.dbjr.com.cn/article/25673.htm
另外一種方法,這個(gè)我們都用過(guò)
復(fù)制代碼 代碼如下:
<Directory "/var/www/upload">
php_admin_flag engine off
</Directory>
相比之下我還是看好的一種方法
您可能感興趣的文章:
- 服務(wù)器nginx權(quán)限被拒絕解決案例
- NGINX?權(quán)限控制文件預(yù)覽和下載的實(shí)現(xiàn)原理
- nginx 讓users有權(quán)限啟動(dòng)的兩種方法
- Nginx列出目錄和文件并用密碼控制訪問(wèn)權(quán)限配置方法
- 權(quán)限問(wèn)題導(dǎo)致Nginx 403 Forbidden錯(cuò)誤的解決方法
- nginx禁止dedecms目錄php執(zhí)行權(quán)限
- nginx設(shè)置上傳目錄無(wú)執(zhí)行權(quán)限的方法
- nginx出現(xiàn)權(quán)限問(wèn)題解決(13: Permission denied)
相關(guān)文章
deepin linux 手動(dòng)升級(jí)內(nèi)核的方法
這篇文章主要介紹了deepin linux 手動(dòng)升級(jí)內(nèi)核的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Linux使用suid vim.basic文件實(shí)現(xiàn)提權(quán)
這篇文章主要介紹了Linux使用suid vim.basic文件實(shí)現(xiàn)提權(quán),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07linux 網(wǎng)絡(luò)編程 socket選項(xiàng)的實(shí)現(xiàn)
這篇文章主要介紹了linux 網(wǎng)絡(luò)編程 socket選項(xiàng)的實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-06-06Linux下查看nginx apache mysql php的編譯參數(shù)
由于工作的需要,有時(shí)候需要在一臺(tái)不是你參與編譯的環(huán)境調(diào)試環(huán)境,這就需要知道nginx,apache,mysql,php的編譯參數(shù),以下小方法能快速讓你了解默認(rèn)的服務(wù)器里的編譯參數(shù)2014-03-03

Linux下connect超時(shí)處理(總結(jié))
這篇文章主要介紹了Linux下connect超時(shí)處理(總結(jié)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
2017-04-04