
1,如果你是Linux主机,apache环境,可以使用下面的方法进行阻止访问,下面是进行阻止指定目录下的php文件运行,比如dedecms的几个核心目录,我们要进行禁止运行,以防护网站的安全。
RewriteEngineon
#安全设置禁止以下目录运行指定php脚本
RewriteCond%!^$
RewriteRulea/(。*)。(php)$–[F]
RewriteRuledata/(。*)。(php)$–[F]
RewriteRuletemplets/(。*)。(php|htm)$–[F]
RewriteRuleuploads/(。*)。(php)$–[F]

2,如果是Linux主机,Nginx环境的话,我们如果想禁止某些核心目录下的文件禁止运行,可以用以下代码来进行实现,值得注意的是,配置完后记得重启Nginx生效。
location~*/(a|data|templets|uploads)/(。*)。(php)${
return403;
}

3,如果是windows主机的用户一般都是iis7、iis8环境,我们可以使用web.config文件来设置,直接设置网站的目录权限,禁止运行目录中的php文件。
<rulename="Blockdata"stopProcessing="true">
<matchurl="^data/(。*)。php$"/>
<conditionslogicalGrouping="MatchAny">
<addinput="{USER_AGENT}"pattern="data"/>
<addinput="{REMOTE_ADDR}"pattern=""/>
</conditions>
<actiontype="AbortRequest"/>
</rule>
<rulename="Blocktemplets"stopProcessing="true">
<matchurl="^templets/(。*)。php$"/>
<conditionslogicalGrouping="MatchAny">
<addinput="{USER_AGENT}"pattern="templets"/>
<addinput="{REMOTE_ADDR}"pattern=""/>
</conditions>
<actiontype="AbortRequest"/>
</rule>
<rulename="BlockSomeRobot"stopProcessing="true">
<matchurl="^uploads/(。*)。php$"/>
<conditionslogicalGrouping="MatchAny">
<addinput="{USER_AGENT}"pattern="SomeRobot"/>
<addinput="{REMOTE_ADDR}"pattern=""/>
</conditions>
<actiontype="AbortRequest"/>
</rule>
上面就是三种服务器伪静的相关配置,配制好以后,要进行测试有没有生效,可以随便创建一个PHP文件传到uploads文件夹下,执行:域名/uploads/测试文件。php如果不能打开说明生效。另外提一下,返回的错误码,我们尽量使用403错误码,对于我们的网站有很大的好处,404是空页面,403是禁止方法,403对于网站SEO是没有影响的,好了,就讲解到这里。