【发布时间】:2012-10-21 23:01:13
【问题描述】:
我正在使用 mongodb 在 php 中编写一个 Web 应用程序,我想用 gridfs 存储非常大的文件 (1gb)。
我有两个问题,首先我遇到了超时,我不知道如何设置 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)'
【问题讨论】: