我正在使用 mongodb 在 php 中编写一个 Web 应用程序,我想用 gridfs 存储非常大的文件(1gb)。
我有 2 个问题,首先我遇到了超时,我不知道如何设置 MongoGridFS 类的光标超时。
<?php
//[...]
$con = new Mongo();
$db = $con->selectDB($conf['base']);
$grid = $db->getGridFS();
$file_id = $grid->storeFile($_POST['projectfile'],
array('metadata' => array('type' => 'release',
'version' => $query['files'][$time]['version'],
'mime' => mime_content_type($_POST['projectfile']),
'filename' => file_name($projectname).'-'.file_name($query['files'][$time]['version']).'.'
.getvalue(pathinfo($_POST['projectfile']), 'extension'))), array( 'safe' => false ));
//[...]
?>
其次,我想知道是否可以在后台执行请求?当我使用此查询存储文件时,执行被阻止,并且由于超时而出现错误 500
PHP 致命错误:未捕获的异常 'MongoGridFSException' 带有消息“无法存储文件:光标超时(超时:30000,剩余时间:0:0,状态:0)”