IT培訓-高端面授IT培訓機構
          云和教育:云和數據集團高端IT職業教育品牌
          • 國家級
            全民數字素養與技能培訓基地
          • 河南省
            第一批產教融合型企業建設培育單位
          • 鄭州市
            數字技能人才(碼農)培養評價聯盟

          鄭州php培訓教程:Nginx/Apache下禁止目錄運行PHP腳本

          • 發布時間:
            2016-10-17
          • 版權所有:
            云和教育
          • 分享:

          鄭州php培訓教程:Nginx/Apache下禁止目錄運行PHP腳本

          云和教育作為云和數據旗下高端泛IT職業教育品牌,開設有UI總監班、PHP高薪班、JAVA大數據班、HTML5專家班、Unity虛擬現實大師班五大精品課程。

          課程設置緊跟時代“前端”發展和“后端”需要。采用小班教學,金牌講師面授輔導,采用沉浸式的教學模式,8+2的學習模式,學員畢業即擁有1-2年工作經驗,貼近企業需求,保證高薪就業!

          網站程序的上傳目錄通常是不需要PHP執行解釋權限,通過限制目錄的PHP執行權限可以提網站的安全性,減少被攻擊的機率。

          下面和大家一起分享下如何在Apache和Nginx禁止上傳目錄里PHP的執行權限。

          Apache下禁止指定目錄運行PHP腳本

          在虛擬主機配置文件中增加php_flag engine off指令即可,配置如下

          <Directory ~ “/website/uploads”>

          Options FollowSymLinks

          AllowOverride None

          Order allow,deny

          Allow from all

          php_flag engine off

          </Directory>

          Nginx下禁止指定目錄運行PHP腳本

          Nginx更簡單,直接通過location條件匹配定位后進行權限禁止。

          在server配置段中增加如下的配置

          如果是單個目錄

          location?~*?^/uploads/.*.(php|php5)$

          {

          deny?all;

          }

          如果是多個目錄

          location?~*?^/(attachments|uploads)/.*.(php|php5)$

          {

          deny?all;

          }

          注意:這段配置文件一定要放在下面配置的前面才可以生效。

          location?~?.php$?{

          fastcgi_pass?127.0.0.1:9000;

          fastcgi_index?index.php;

          fastcgi_param?SCRIPT_FILENAME?$document_root$fastcgi_script_name;

          include?fastcgi_params;

          }

          最后給一個完整的配置示例

          location?~?/mm/(data|uploads|templets)/*.(php)$?{

          deny?all;

          }

          location?~?.php$?{

          try_files?$uri?/404.html;

          fastcgi_pass?127.0.0.1:9000;

          fastcgi_index?index.php;

          fastcgi_param?SCRIPT_FILENAME?$document_root$fastcgi_script_name;

          include?fastcgi_params;

          }

          配置完后記得重啟Nginx生效。