我们经常会把网站的图片文件上传目录设置为只可上传文件但不能执行文件,就是要禁止执行权限,小编来给大家举一个上传目录配置,禁止执行权限方法,各位可参考。
如果不让有执行权限最简单的办法
代码如下 | 复制代码 |
location ~ ^/upload/.*.(php|php5)$ { deny all; }
|
上面的方法满足不了我要求,后来找到一个不错的脚本
代码如下 | 复制代码 |
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; }
|
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; }
|