dedecms织梦出现“Upload filetype not allow”原因和解决方案
资源:武汉科技有限公司倍频猫
我最近升级DEDE5.6出现此问题后。和解决的方法。
假设有同学是按某些朋友用删除代码的方法解决这个问题的话,建议你修正此做法,毕竟这是有非常大安全风险的。而DEDE本身的安全隐患比較多。不论什么不安全的改动和操作都会断送掉站点的安全。
[代码]php代码:
1 |
$imtypes = array("image/pjpeg","image/jpeg","image/gif","image/png","image/xpng","image/wbmp","image/bmp"); |
2 |
if(in_array(strtolower(trim(${$_key.'_type'})),$imtypes)) |
3 |
{ |
4 |
$image_dd= @getimagesize($$_key); |
5 |
if is_array($image_dd)) |
6 |
{ |
7 |
exit('Upload filetype not allow !'); |
8 |
} |
9 |
} |
这里的$$_key。指的是上传文件的暂时路径,如“d:/php/temp/aaa.tmp”。
我们能够看出,这getimagesize($$_key)这种方法。是在请求PHP暂时文件夹的读取权限。假设d:/php/temp没有读取权限就会出现无法读取的错误。
@getimagesize($$_key);返回的值事实上是False,而这里DEDE程序猿简单的使用了@屏掉错误提示,并没有考虑到权限问题,造成用户无法了解真正错误原因是没有文件夹权限。而不是文件类型不同意。
一顿茫然。
改动办法例如以下:
1。在PHP.ini中加入d:/php/temp的读写权限,这一步基本上都不用操作。由于这个文件夹一般都是可读写的。不然不论什么文件都无法上传;
2,部份虚拟主机用户,可能加入了php_admin_value open_basedir 指令。在这里。我们要求加入上暂时文件夹的权限,如:“php_admin_value open_basedir "E:/wwwroot/www.a.com;D:/PHP/temp"”
然后,重新启动WebServer,至今,问题解决了。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
dedecms织梦出现“Upload filetype not allow”原因和解决方案的更多相关文章
- dedecms织梦如何删除所有的文章?
dedecms织梦如何删除所有的文章?dede一键删除所有文章的SQL命令: DELETE FROM dede_addonarticle WHERE aid >= 1 and aid<= ...
- dedecms 织梦ping服务插件 最新破解可用版
dedecms 织梦ping服务插件 最新破解可用版 ping_gbk.xml <module> <baseinfo> name=ping服务 team=井哥 time=20 ...
- DEDECMS织梦全站动态化访问(包括自由列表freelist)及发布内容时自动动态化设置
DEDECMS织梦 - 全站已有内容全部设置为动态化访问(包括自由列表freelist),以及发布内容时自动为动态化,设置分为三个步骤: 1.将所有文档设置为“仅动态”:执行以下mysql语句:upd ...
- dedecms织梦首页如何调用文章列表?
如果冯耀宗博客类似,首页调用文章列表,同时也有许多企业站需要调用文章列表,今天我与大家来分享一下dedecms织梦首页如何调用文章列表? {dede:arclist row='16' tit ...
- dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
- 转载]浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法
原文地址:浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法作者:it_wang 今天,一个客户朋友问到织梦留言板如何调用head.htm以及自定义,企业网站源码之前有摸索过,但是没 ...
- Dedecms织梦内容页获取当前页面顶级栏目名称方法
Dedecms织梦做站的时候,需要在当前页面调用顶级栏目名称的时候,织梦默认{dede:field name='typename' /} 可以获取当前栏目页上一级栏目的名称,而不是当前栏目顶级栏目名称 ...
- dedecms织梦 v5.5 两处跨站漏洞
漏洞版本: dedecms织梦5.5 漏洞描述: 北洋贱队(http://bbs.seceye.org)首发 demo1:http://www.dedecms.com/plus/search.php? ...
- dedecms织梦 v5.6 两处跨站漏洞
漏洞版本: dedecms织梦 v5.6 漏洞描述: DedeCMS内容管理系统软件采用XML名字空间风格核心模板:模板全部使用文件形式保存,对用户设计模板.网站升级转移均提供很大的便利,健壮的模板标 ...
随机推荐
- 用CMake代替makefile进行跨平台交叉编译
在开始介绍如何使用CMake编译跨平台的静态库之前,先讲讲我在没有使用CMake之前所趟过的坑.因为很多开源的程序,比如png,都是自带编译脚本的.我们可以使用下列脚本来进行编译: 1 2 3 ./c ...
- [Vue] Parent and Child component communcation
By building components, you can extend basic HTML elements and reuse encapsulated code. Most options ...
- 【codeforces 757B】 Bash's Big Day
time limit per test2 seconds memory limit per test512 megabytes inputstandard input outputstandard o ...
- 数据结构与算法——常用高级数据结构及其Java实现
前文 数据结构与算法--常用数据结构及其Java实现 总结了基本的数据结构,类似的,本文准备总结一下一些常见的高级的数据结构及其常见算法和对应的Java实现以及应用场景,务求理论与实践一步到位. 跳跃 ...
- springMVC中前台ajax传json数据后台controller接受对象为null
在jquery的ajax中,如果没加contentType:"application/json",那么data就应该对应的是json对象,反之,如果加了contentType:&q ...
- [Angular] Pipes as providers
In this example, we are going to see how to use Pipe as providers inject into component. We have the ...
- Go语言:正則表達式的使用
Go语言的正則表達式使用非常easy.演示样例代码: package test import ( "fmt" "regexp" ) func RegixBase ...
- 《Erlang程序设计》学习笔记-第1章 编译并运行程序
http://blog.csdn.net/karl_max/article/details/3976372 1. erlang:halt()可以即刻停止系统运行. 2. q()命令可以完成文件和数据库 ...
- 检索01-c#中基本数据类型和引用类型的区别
1.基本定义 基本数据类型包括:整型.浮点型.字符型.结构体.布尔型.日期时间.枚举类型等 引用类型包括:字符串.类.数组.接口等 堆定义:是一种特殊的树形数据结构,每个结点都有一个值,一般由程序员分 ...
- ts demuxer的加入记录
文件夹 1 初衷 2 ts demux的功能介绍 1 初衷 之前打算给dtplayer加入一些亮点功能,最初的想法是:bt下载播放 + hls支持 bt下载因为以来libtorrent库,尽管搞懂了怎 ...