首頁  >  文章  >  CMS教程  >  dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

藏色散人
藏色散人原創
2019-11-19 11:04:511540瀏覽

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限?

網站安全性中,對目錄的執行權限是非常敏感的,一般來說,可以寫入的目錄是不能夠擁有腳本的執行權限的,像DedeCMS系統,可寫入的有兩個目錄data、uploads,data目錄主要是基本設定檔和快取數據,uploads則是附件上傳保存的目錄;

本篇將針對不同伺服器環境來介紹如何取消這兩個目錄的執行權限,當然我們也建議使用者其他一些產生純靜態html的目錄,擁有可寫入權限的也統統去除執行權限,這樣系統會比較安全。

推薦學習:dedecms教學

Windows下的IISIIS6.0

開啟IIS中站點,在站點uploads目錄、data目錄以及靜態html生成目錄點擊右鍵,選單中選擇“屬性”,在目錄屬性面板選擇執行權限為“無”即可。 (如圖1)

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖1)

 

IIS7

##IIS7也類似IIS6.0,選擇網站對應的目錄,data、uploads及靜態html檔案目錄,雙擊功能試圖面板中的「處理程序映射」(如圖2)

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖2)

在「編輯功能權限…」中,我們直接移除腳本的執行權限即可。 (如圖3)

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖3)

 

Apache下目錄腳本的執行權限設定獨立主機設定

在Apache中,沒有Windows 下IIS的圖形管理介面,我們需要手動修改下apache的設定文件,來進行目錄腳本的執行權限的設定。

首先我們找到apache的設定檔httpd.conf,通常情況下,該設定檔在apache安裝目錄下的conf資料夾中(如圖4)。

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖4)

#開啟httpd.conf文件,找到內容中如圖5的位置:

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖5)

 

將需要限制執行腳本檔案的目錄設定新增至下方:

設定內容為:

複製程式碼程式碼如下:

<Directory "DIR">    
<FilesMatch ".(php|asp|jsp)$">     
    Deny from all    
</FilesMatch>
</Directory>

 設定內容中的DIR為需要限制執行腳本檔案的目錄,FilesMatch後的內容為需要限定的執行的腳本後綴名。例如:這裡需要禁止測試站點uploads資料夾下的PHP,ASP,JSP腳本的運行,則進行如下圖6配置:

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖6)

 

在設定完成後,重新啟動apache,設定方便生效!

在操作前,uploads資料夾下我新建了一個index.php文件,圖7為未作配置前訪問情況

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖7 )

圖8為重啟apache後造訪該頁面的效果。

dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限

(圖8)

虛擬主機/空間設定

在設定前需要確認你的空間是否支援.htaccess和rewrite ,此方法是基於.htaccess檔案中使用rewrite達到禁止指定腳本的運作效果。

規則內容如下:

複製程式碼程式碼如下:

RewriteEngine on  RewriteCond % !^$  
RewriteRule uploads/(.*).(php)$ – [F]  
RewriteRule data/(.*).(php)$ – [F]  
RewriteRule templets/(.*).(php)$ – [F]

針對uploads,data,templets 三個目錄做了執行php腳本限制;

將如上內容儲存至到.hatccess檔案中,將該檔案存放到你的網站根目錄下,

這樣,目錄腳本的執行權限就控制好了,規則上傳前後的效果同圖7,圖8。 

以上是dedecms怎麼取消伺服器/主機空間目錄腳本的執行權限的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn