卡饭网 > nginx > 正文

nginx只允许执行php程序配置

来源:本站整理 作者:梦在深巷 时间:2013-12-26 16:40:46

方法一,nginx限制后缀

解决办法:

代码如下
location ~* .(txt|doc|sql|gz)$ {
if (-f $request_filename) {
break;
}
}

上面代码限制了txt doc sql gz文件名后缀的不被访问,如果请求就跳出.

当然如果还要更严格点的话,那也可以使用下面的:

代码如下
location ~* .(txt|doc|sql|gz)$ {
deny all;
}

这样就完全禁止访问txt doc sql gz文件后缀.看大家自己的选择了.

方法二,今天我想到了另外一种限制的方法( 系统:centos 5.9 )

代码如下

server
{
listen 80;
server_name www.111cn.net;
root /var/www/vhosts/www.111cn.net;
location /
{
index index.php;
set $is_php 'no';
if (!-f $request_filename ) {
set $is_php 'yes';
}
if ($request_filename ~ (.php.*) ) {
set $is_php 'yes';
}
if ($is_php ~ ^no$){
return 404;
}
}
access_log /var/log/www/blog.slogra.com.access.log;
}

小结

nginx如果不让php支持我们可以配置环境是不配置php环境即可了,这个比较好解决了,如果配置了php环境我们可以直接删除php环境即可。

相关推荐