国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

幫助中心 >  技術(shù)知識(shí)庫 >  云服務(wù)器 >  服務(wù)器教程 >  解決DEDEcms 出現(xiàn)“Upload filetype not allow”問題

解決DEDEcms 出現(xiàn)“Upload filetype not allow”問題

2016-06-12 03:25:56 13279

Upload filetype not allow是告訴我們上傳文件類型不對(duì)或沒有權(quán)限了,在這里我們來看dedecms上傳文件報(bào)錯(cuò)Upload filetype not allow問題解決方案.

如果有同學(xué)是按某些朋友用刪除代碼的方法解決問題的話,建議你修正此做法,畢竟這是有很大安全風(fēng)險(xiǎn)的,而DEDE本身的安全隱患比較多,任何不安全的修改和操作都會(huì)斷送掉網(wǎng)站的安全.

  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.  { //phpfensi.com 

  7.  exit('Upload filetype not allow !'); 

  8.  } 

  9.  } 

這里的$$_key,指的是上傳文件的臨時(shí)路徑,如“d:/php/temp/aaa.tmp”。

我們可以看出,這getimagesize($$_key)這個(gè)方法,是在請(qǐng)求PHP臨時(shí)目錄的讀取權(quán)限,如果d:/php/temp沒有讀取權(quán)限就會(huì)出現(xiàn)無法讀取的錯(cuò)誤.

@getimagesize($$_key);返回的值其實(shí)是False,而這里DEDE程序員簡(jiǎn)單的使用了@屏掉錯(cuò)誤提示,并沒有考慮到權(quán)限問題,造成用戶無法了解真正錯(cuò)誤原因是沒有目錄權(quán)限,而不是文件類型不允許.

一頓茫然.

修改辦法如下:

1,在PHP.ini中添加d:/php/temp的讀寫權(quán)限,這一步基本上都不用操作,因?yàn)檫@個(gè)目錄一般都是可讀寫的,不然任何文件都無法上傳;

2,部份虛擬主機(jī)用戶,可能添加了php_admin_value open_basedir 指令,在這里,我們要求添加上臨時(shí)目錄的權(quán)限,如:“php_admin_value open_basedir "E:/wwwroot/www.tjdsmy.cn;D:/PHP/temp"”

然后重啟WebServer,至此,問題解決.


提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: