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生效。