Plupload大尺寸视频分片上传后无法合并问题求助
Plupload大尺寸视频分片上传后无法合并问题求助
我现在在Windows 11的WAMP服务器上开发网站,用Plupload来上传大尺寸视频文件,同时还要提交其他表单字段。现在遇到个头疼的问题:分片上传是成功的,但上传后的.part文件没法自动合并,上传文件夹里全是比如myvideo.mp4.part这类分片文件(比如传75MB的mp4,就会生成多个大小不一的.part文件)。
已经尝试过的解决办法
- 把php.ini里的
upload_max_filesize和post_max_size都改成了2000M,重启Apache后重试,没用 - 也在
video-upload.php脚本里加了这些配置,还是没解决问题
我当前的代码
index.php
<?php include("db.php"); if ((isset($_POST['action'])) && ($_POST['action']=="add-video")){ $lecturer_name = $database->filter($_POST["lecturer_name"]); $lecturer_mobile = $database->filter($_POST["lecturer_mobile"]); $lecturer_email = $database->filter($_POST["lecturer_email"]); $video_url = $database->filter($_POST["video_url"]); /* Rest PHP Validation And Insert Data in Mysql Database Table Code Here */ } ?> <!DOCTYPE html> <html> <head> <script src="js/jquery.min.js"></script> <link type="text/css" rel="stylesheet" href="src/plugins/plupload/js/jquery.ui.plupload/css/jquery.ui.plupload.css" media="screen" /> <link type="text/css" rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/themes/smoothness/jquery-ui.min.css" media="screen" /> <script src="src/plugins/plupload/js/plupload.full.min.js"></script> <script type="text/javascript" src="src/plugins/plupload/js/jquery.ui.plupload/jquery.ui.plupload.min.js" charset="UTF-8"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js" charset="UTF-8"></script> <script src="src/plugins/plupload/jquery.plupload.queue.js"></script> <script type="text/javascript"> // Initialize the widget when the DOM is ready $(function() { $("#uploader").plupload({ // General settings runtimes : 'html5,flash,silverlight,html4', url : "video-upload.php", // Maximum file size max_file_size : '999mb', chunk_size: '1mb', // Specify what files to browse for filters : [ {title : "Image files", extensions : "jpg,jpeg,gif,png"}, {title : "Video files", extensions : "mp4,avi,mpeg,mpg,mov,wmv"}, {title : "Zip files", extensions : "zip"}, {title : "Document files", extensions : "pdf,docx,xlsx"} ], // Rename files by clicking on their titles rename: true, // Sort files sortable: true, // Enable ability to drag'n'drop files onto the widget (currently only HTML5 supports that) dragdrop: true, // Views to activate views: { list: true, thumbs: true, // Show thumbs active: 'thumbs' }, // Flash settings flash_swf_url : 'src/plugins/plupload/js/Moxie.swf', // Silverlight settings silverlight_xap_url : 'src/plugins/plupload/js/Moxie.xap', init : { FileUploaded: function(up, file, info) { $("#video_url").val(file.name); } } }); }); </script> </head> <body> <form id="main-group-addition" action="" method="post" enctype="multipart/form-data"> <input type="hidden" name="action" value="add-video" /> <div class="form-group"> <label>Lecturer Name *</label> <input type="text" name="lecturer_name" class="form-control" id="lecturer_name" value="<?php if(isset($lecturer_name)){ echo $lecturer_name;}?>" > </div> <div class="form-group"> <label>Lecturer Mobile *</label> <input type="text" name="lecturer_mobile" class="form-control" id="lecturer_mobile" value="<?php if(isset($lecturer_mobile)){ echo $lecturer_mobile;}?>" > </div> <div class="form-group"> <label>Lecturer Email *</label> <input type="text" name="lecturer_email" class="form-control" id="lecturer_email" value="<?php if(isset($lecturer_email)){ echo $lecturer_email;}?>" > </div> <!-- Video Upload Div Used With plupload. First Video Uploaded And File Name is Inserted via above Javascript Bind option in Below "video_url" input field --> <div class="form-group"> <div id="uploader"> <p>Your browser doesn't have Flash, Silverlight or HTML5 support.</p> </div> <input type="hidden" name="video_url" id="video_url" value="" /> </div> </form> </body> </html>
补充疑问
我突然反应过来,负责处理分片上传和合并逻辑的video-upload.php代码我没贴出来,这应该是核心环节。是不是我后端完全没写合并分片的代码,才导致.part文件没法合并成完整文件?有没有大佬能帮我排查问题,或者给我一个适配当前场景的后端分片合并示例代码?
内容来源于stack exchange
相关产品推荐
相关产品推荐

