iis、apache與nginx禁止目錄執行asp、php指令碼的實現方法_Linux

來源:互聯網
上載者:User

一般iis中比較簡單,iis6如下圖所示即可:

在“編輯功能許可權……”中,我們直接去除指令碼的執行許可權即可。(如圖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檔案許可權

<Directory /www/www.jb51.net/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即可。
好了就這些吧,做了這些應該不會有什麼問題基本夠用!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.