部門(mén)bug系統(tǒng)采用bugfree,,由于不能上傳大附件,,需要解決一下,。 1.修改bugfree的配置: 在bugfree的配置文件中:bugfree目錄的Include中的文件:Config.inc.php中找到 $_CFG['File']['MaxFileSize'] 這個(gè)參數(shù),設(shè)置到10M 在bugfree的頁(yè)面中,,已經(jīng)顯示可以上傳10M附件了,但是上傳大文件失?。?br> 2. 解決MySQL的大文件問(wèn)題: (http://dev./doc/refman/5.1/zh/problems.html#packet-too-large http://blog.csdn.net/wangpingpaul/archive/2009/04/15/4075568.aspx ) 原來(lái)以為bugfree的所有內(nèi)容都放在MySQL中,,首先從MySQL著手。 MySQL要設(shè)定最大packet的大?。ㄈ笔?M),設(shè)定方式為: 在/etc/my.cnf中,,添加: set-variable=max_allowed_packet=16M,重啟MySQL 進(jìn)入到MySQL,,輸入命令: show variables; 找到:max_allowed_packet 這一行,,值為:16777216,,生效了。 但是Bugfree還是無(wú)法上傳2M多的文件 3.可能是Php的問(wèn)題: 按照網(wǎng)上的說(shuō)法,,php的上傳,也有限制大小的問(wèn)題。 修改php.ini的修改方法修改配置(都是網(wǎng)上抄的,,都差不多),修改/etc/php.ini (系統(tǒng)中只找到這個(gè)php.ini文件,,也是后面錯(cuò)誤的關(guān)鍵) (http://www./course/4_webprogram/php/phpjs/20090307/159333.html# http://www.w3school.com.cn/php/php_file_upload.asp http://www./html/97/14397-4443.html )
修改后(上述表格中的8M,在我這里都設(shè)置成20M) ,重啟apache,,但是還是不行。 把bugfree的源碼也看了半天(php自己從來(lái)么有學(xué)過(guò),,只能現(xiàn)學(xué)現(xiàn)賣),,編寫(xiě)了一些php代碼,,發(fā)現(xiàn)問(wèn)題: php文件上傳,還有錯(cuò)誤標(biāo)識(shí),,把錯(cuò)誤表示打出來(lái):
發(fā)現(xiàn)結(jié)果是1,,說(shuō)明剛才修改的php.ini沒(méi)有發(fā)生效果,??赡艿脑蛴?點(diǎn) 1. 修改錯(cuò)了 2. 根本沒(méi)有讀到這個(gè)php.ini 第二種可能性比較大。 首先排除第一種可能性了,。如何顯示到底讀取那個(gè)php.ini?當(dāng)前php的maxfile配置是多少,? 還好知道有一個(gè)phpinfo,,自己寫(xiě)了一個(gè)php頁(yè)面:非常簡(jiǎn)單就只有: <?php echo phpinfo(); ?> 把php的所有信息都打印出來(lái)。 檢查:果然maxfilesize只有1M,,php.ini讀的也不是/etc下的。 按照phpinfo中顯示的php.ini的目錄位置,,把php.ini文件復(fù)制過(guò)去,,重啟apache,,問(wèn)題解決了。 還有一種方法,,在apache中指定php的配置文件:
總結(jié): 修改php參數(shù)的時(shí)候,花費(fèi)了最多的時(shí)間,。問(wèn)題在于:前2步修改后,,對(duì)修改的效果做了校驗(yàn),,確信修改的參數(shù)發(fā)生了效果,但是最后修改php的時(shí)候,,沒(méi)有做這一步,,浪費(fèi)了大量的時(shí)間,。 |
|
來(lái)自: zybingliu > 《個(gè)人工作》