nginx只允许执行php程序配置
方法一,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环境即可。
赞 (0)