在一個(gè)項(xiàng)目中,接到用戶反饋說其所有客戶不能上傳文件,都返回失敗。經(jīng)過排查發(fā)現(xiàn)是PHP中的is_uploaded_file函數(shù)在搗鬼。

細(xì)節(jié)分析:

在正常情況下,通過PHP 上傳文件 ,需要通過is_uploaded_file函數(shù)來判斷文件是 " /> 北条麻妃夫の友人196,亚洲欧美成人综合,伊人久久99热这里只有精品

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

is_uploaded_file函數(shù)引發(fā)的不能上傳文件問題

起因:

在一個(gè)項(xiàng)目中,接到用戶反饋說其所有客戶不能上傳文件,都返回失敗。經(jīng)過排查發(fā)現(xiàn)是php中的is_uploaded_file函數(shù)在搗鬼。

細(xì)節(jié)分析:

在正常情況下,通過php 上傳文件 ,需要通過is_uploaded_file函數(shù)來判斷文件是否是通過 HTTP POST 上傳的,這可以用來確保惡意的用戶無法欺騙腳本去訪問本不能訪問的文件,例如 /etc/passwd。
而本次遇到的問題是本來應(yīng)該是C:/WINDOWS/Temp/php99.tmp這樣的tmp_name,卻變成了C://WINDOWS //Temp//php99.tmp這種,導(dǎo)致is_uploaded_file函數(shù)返回錯(cuò)誤的信息。

處理方式:

在加上如下代碼后,問題解決。
$file['tmp_name'] = str_replace('////', ‘//', $file['tmp_name']);
注意,“////”實(shí)際字符串就是兩個(gè)/,其他兩個(gè)是用來表示轉(zhuǎn)義的。

深入研究:

為什么在默寫特定的環(huán)境下會(huì)出現(xiàn)這種情況呢,我們來看如下分析:
; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = On
php的默認(rèn)配置中magic_quotes_gpc是On的,而打開了magic_quotes_gpc參數(shù)的php環(huán)境會(huì)自動(dòng)對GET/POST /Cookie添加addslashes效果。注意,并不會(huì)為$_FILES添加addslashes效果。
而當(dāng)magic_quotes_gpc是Off的時(shí)候,由于為$_FILES數(shù)組添加了addslashes作用,反而出現(xiàn)了問題。也就在 magic_quotes_gpc是Off的php環(huán)境下都會(huì)出現(xiàn)此問題。

順帶說句,SVN上的Moophp代碼已經(jīng)修復(fù)此問題。

is_uploaded_file函數(shù)解析:

判斷文件是否是通過 HTTP POST 上傳的
bool is_uploaded_file ( string $filename )
如果 filename 所給出的文件是通過 HTTP POST 上傳的則返回 TRUE。這可以用來確保惡意的用戶無法欺騙腳本去訪問本不能訪問的文件,例如 /etc/passwd。 這種檢查顯得格外重要,如果上傳的文件有可能會(huì)造成對用戶或本系統(tǒng)的其他用戶顯示其內(nèi)容的話。

為了能使 is_uploaded_file() 函數(shù)正常工作,必段指定類似于 $_FILES['userfile']['tmp_name'] 的變量,而在從客戶端上傳的文件名 $_FILES['userfile']['name'] 不能正常運(yùn)作。

php技術(shù)is_uploaded_file函數(shù)引發(fā)的不能上傳文件問題,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美四虎精品二区免费 | 欧美 亚洲综合在线一区 | 9277在线观看免费高清完整版 | 真人裸交有声性动态图 | AV无码久久无遮挡国产麻豆 | 鞋奴的视频VK | 欧美一区二区视频高清专区 | 国产 亚洲 中文在线 字幕 | 91精品在线国产 | 午夜一区欧美二区高清三区 | 777米奇影院第七色色 | 久久视频这里只精品99热在线观看 | 成人在线视频免费看 | 亚洲国产精品一区二区三区在线观看 | 极品少妇高潮啪啪AV无码吴梦梦 | 嫩草影院在线观看精品视频 | 亚洲三级黄色 | 99久久夜色精品国产亚洲AV卜 | 少女10声大哥喊退色狼 | 伊人青青久| 边做边爱BD免费看片 | 精品日韩二区三区精品视频 | 国产精品久久久久激情影院 | 性欧美金发洋妞xxxxbbbb | vidosgratis tv少女| 国内精品视频久久久久免费 | 24小时日本免费看 | 99热成人精品国产免男男 | 精品AV综合导航 | 久久精品国产eeuss | 原神美女被超污app 御姐被吸奶 | 色-情-伦-理一区二区三区 | 免费国产久久啪在线 | 息与子在线交尾中文字幕 | 伊人不卡久久大香线蕉综合影院 | 国产最新进精品视频 | 湖南电台在线收听 | eussse手机电影在线观看 | 国产精品涩涩涩视频网站 | 国产成人精品电影在线观看 | 国产亚洲日韩在线播放不卡 |