php5.2無法得到POST的數據

前幾天把php的版本從5.1升級到了5.2,今天突然發現一個bug:無法得到表單提交的POST數據。

    簡直是莫名其妙。

    剛開始以爲是升級導致的,在其它的5.2的機器上試驗,發現一切正常,看樣子應該是某些php的配置項導致的。查,查看所有的php配置項,看到奇怪的就註釋掉,一點點的試驗,最終發現是 apc.rfc1867=1 導致的,把此項的值該爲0或者刪掉此項,就可以得到POST數據了。

    查了查這個配置項的含義:好像是可以用來做大文件的上傳進度條。沒怎麼看懂,基本原理是所上傳的文件首先經過apc的處理放到內存中,客戶端(瀏覽器)通過JS異步請求的方式可以向查詢apc文件已經保存了多少(百分比), 進而在客戶端(瀏覽器)展示進度。

    是個不錯的東西,缺陷是在目前Web程序中,即使是相同的客戶端,每次提交的請求大都不會發送到相同的機器上,這樣JS也就不能獲得上傳的進度了。畢竟APC是本地緩存的,不是類似於memcache的分佈式存儲。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章