一般iis中比較簡單,iis6如下圖所示即可:
很多購買虛擬主機空間的用戶,如果空間商提供了在線管理程序,也可以實現。具體的看下幫助即可。
需要知道目錄名稱,設置即可。
iis7+禁止執行php等
IIS7也類似于IIS6.0,選擇站點對應的目錄,data、uploads及靜態html文件目錄,雙擊功能試圖面板中的“處理程序映射”(如圖2)
在“編輯功能權限……”中,我們直接去除腳本的執行權限即可。(如圖3)
apache中一般是通過.htaccess文件來限制
Apache環境規則內容如下:Apache執行php腳本限制 把這些規則添加到.htaccess文件中
RewriteEngine on RewriteCond % !^$
RewriteRule uploads/(.*).(php)$ – [F]
RewriteRule data/(.*).(php)$ – [F]
RewriteRule templets/(.*).(php)$ –[F]
以Apache 模塊方式運行 PHP,你可以在vhosts配置文件中添加如下代碼:
禁止upload目錄執行php文件權限
1
2
3
4
5
6
7
8
9
|
< Directory /www/www.zmynmublwnt.cn/upload> php_flag engine off </ Directory > < Directory ~ "^/www/.*/upload"> < Files ~ ".php"> Order allow,deny Deny from all </ Files > </ Directory > |
nginx環境規則內容如下:nginx執行php腳本限制
LNMP有一個缺點就是目錄權限設置上不如Apache,有時候網站程序存在上傳漏洞或類似pathinfo的漏洞從而導致被上傳了php木馬,而給網站和服務器帶來比較大危險。建議將網站目錄的PHP權限去掉,當訪問上傳目錄下的php文件時就會返回403錯誤。
首先要編輯nginx的虛擬主機配置,在fastcgi的location語句的前面按下面的內容添加:
location ~ /(data|uploads|templets)/.*.(php|php5)?$ {
deny all;
}
下面是補充:
以下配置均在nginx配置的server處添加
location ~ /attachments/.*.(php|php5)?$ {
deny all;
}
禁止attachments目錄執行php文件權限
2、多個目錄
location ~ /(attachments|upload)/.*.(php|php5)?$ {
deny all;
}
禁止attachments與upload目錄執行php文件權限
配置完后,重新reload nginx即可。
好了就這些吧,做了這些應該不會有什么問題基本夠用!