linux主机的用户一般都是apache环境,使用 .htaccess 文件来设置,如果你网站根目录已经存在这个文件,那就复制一下代码添加进去,没有这个文件的小伙伴可以下载下来放进去
RewriteEngine on#安全设置 禁止以下目录运行指定php脚本
RewriteCond % !^$RewriteRule a/(.*).(php)$ – [F]RewriteRule data/(.*).(php)$ – [F]RewriteRule templets/(.*).(php|htm)$ – [F]RewriteRule uploads/(.*).(php)$ – [F]https://pan.baidu.com/s/1E3QQw6iXg7RZhJ2AsS-KSA.htaccess 文件下载
windows主机的用户一般都是iis7、iis8环境,使用 web.config 文件来设置,请确认你的主机已经开启了伪静态而且网站根目录有 web.config 文件,有这个文件的可以复制以下代码添加到对应的rules内,没有这个文件的小伙伴可以下载下来放进去
<rule name="Block data" stopProcessing="true"> <match url="^data/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="data" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /></rule><rule name="Block templets" stopProcessing="true"> <match url="^templets/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="templets" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /></rule><rule name="Block SomeRobot" stopProcessing="true"> <match url="^uploads/(.*).php$" /> <conditions logicalGrouping="MatchAny"> <add input="{USER_AGENT}" pattern="SomeRobot" /> <add input="{REMOTE_ADDR}" pattern="" /> </conditions> <action type="AbortRequest" /></rule>web.config 文件下载
https://pan.baidu.com/s/1I24VYxGPezDWgPVdxHzq9Q
Nginx下禁止指定目录运行PHP脚本
注意:这段配置文件一定要放在 location ~ .php(.*)$ 的前面才可以生效,配置完后记得重启Nginx生效。
location ~* /(a|data|templets|uploads)/(.*).(php)$ { return 403;}宝塔面板的在配置文件里找到PHP引用配置
宝塔面板的小伙伴想要一次性给所有网站加这个的话,看下图操作
百度云Nginx虚拟主机,开启伪静态后,手动添加个 bcloud_nginx_user.conf 放网站根目录
location ~* /(a|data|templets|uploads)/(.*).(php)$ { return 403;}第九步尤其重要,如何验证第八步是否生效呢
用 Noptepad++ 或者 Sublime Text 或者 Dreamweaver 新建一个php文件,名为1.php,里面随便打几个数字即可
上传到你网站的 uploads 文件夹里,然后在浏览器上打开 域名/uploads/1.php
这样提示表示生效了
如果是能正常显示你写的数字,那表示没生效,有风险,想办法让它生效吧。