或者,有沒有辦法在PHP中設置系統臨時目錄(而不是上傳臨時目錄)?PHP中sys_temp_dir和upload_tmp_dir有什麼區別?
當我運行
echo sys_get_temp_dir();
我得到/tmp
。 當我運行
ini_get('upload_tmp_dir');
,我感到我在我的php.ini
文件中指定的目錄。無論如何改變什麼PHP用於系統臨時目錄?
我一直在我的/tmp
目錄中出現隨機文件。這些以「php」爲前綴,然後有一系列隨機數字和字母。從我所知道的情況來看,這些可能是由PHP tmpfile或tempnam生成的。 httpd是在創建時使用它們的過程。他們是大量的文件,填滿我的整個/tmp
分區,並把我的服務器關閉。我無法弄清楚他們來自哪裏。我可以將/tmp
分區大小從500MB增加到2GB,但如果可以的話我寧願避免。
我不明白sys_get_temp_dir()
是從哪裏拉/tmp
。我搜索的所有東西只是告訴我要在.ini中更改upload_tmp_dir,但這些是兩個獨立的東西。
我不會說 「修復」。我會說「改變」。將會話寫入磁盤並不是一個需要修復的錯誤。 – kainaw
echo session_save_path()的輸出是/ var/lib/php/session。 主要問題不是這些文件的數量,而是大小。它不會經常發生,但當它發生時,它是一個超過400MB的單個文件並填充目錄。 有問題的文件被命名爲「phpa4subv」。每次發生這種情況時,文件都被命名爲php - something。自隨機生成以來,很難獲得任何信息。沒有文件擴展名。聽起來像tempnam/tmpfile會創建一些東西。 –