2013-07-29 146 views
1

我們最近升級我們的服務器從PHP 5.4.15至5.5.1,並已開始在日誌中收到此錯誤PHP錯誤的文件描述符錯誤

致命錯誤無法創建鎖定文件:錯誤的文件描述符

我已經跟蹤到這一位代碼,該代碼打開另一個小的PHP腳本,該腳本在後臺將文件上傳到S3。

// Grab uploaded file and assign a working name 
$fileTemp = $_FILES['file']['tmp_name']; 
$pathToWorkingFile = tempnam($g_TmpDirectory, "TR-"); 

// Move the file to our working area   
if (move_uploaded_file($fileTemp, $pathToWorkingFile) === false) 
    throw new Exception("Cannot move file to staging area.", 1011); 

// Where the file will end up on S3 
$s3Bucket = "test.bucket.com"; 
$uploadDest = "/uploads/image123.jpg"; 

// Create process to upload file in background 
popen("/usr/local/bin/php /path/to/uploadScript.php $pathToWorkingFile $s3Bucket $uploadDest &", 'r'); 
+0

我們不知道你的代碼的其餘部分看起來像......那一個片段似乎很沒用...... – Neal

+0

我希望至少'$ SOME ARGUMENTS' $從'escapeshellarg接受治療() '。 – Sven

+0

可能是損壞的文件系統,測試和修復取決於您的操作系統。 fsck是在Linux上啓動或掃描/檢查Windows上的磁盤的地方 – Anigel

回答

1

事實證明,這個錯誤是由我們在PHP升級過程中啓用的OPcache配置引起的。當我通過從php.ini中刪除此設置禁用它的命令行操作時,一切正常。

opcache.enable_cli=1 
相關問題