经常会把网站的图片文件上传目录设置为只可上传文件但不能执行文件,就是要禁止执行权限。
本节就为大家介绍nginx上传目录的权限配置、禁止执行权限的方法。
1,禁止执行权限最简单的办法
2,禁止nginx目录权限(php执行权限)脚本:
server
{
listen 80;
server_name xxxx.com;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/xxxx.com;
include none.conf;
#匹配多个上传目录
location ~ ^/(Upload|Upload1)
{
# 匹配文件最名包含两个.以上的文件
location ~ "([.]{2,})$"
{
deny all;
}
# 配置php和php5后缀
location ~ ".(php|php5)$"
{
deny all;
}
}
location ~ .*.(php|php5)?$
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
access_log off;
}
3,nginx下禁止dedecms目录php执行权限,配置如下:
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;
includefastcgi_params;
}
以上就完成了nginx目录权限的配置,还是使用location来实现,达到了目标指定目录中的php执行权限 。