繁体   English   中英

uploadify-8MB以下的文件可以工作,更大的文件不要

[英]uploadify - files below 8MB work, bigger don't

我使用的是上一个项目中也使用过的uploadify v.3.2,在这里工作正常!

但是现在我正尝试在另一台服务器上上传最大500 MB的文件。 但是脚本最多只能上传7.9 MB的文件...

我的php-info告诉:

upload_max_filesize 512M

post_max_size 512M

这是我在HTML模板中使用的脚本:

        $(function() {
            $('#data').uploadify({
                'formData'     : {
                'timestamp' : '1349443065',
                'token'     : '94a031393fe2f786fdfc14c0cd432204'
                },
                'swf'      : './includes/uploadify.swf',
                'uploader' : './includes/uploadify.php',
'buttonText' : 'choose file',
'onUploadSuccess' : function(file, data, response) {
            alert('Die Datei ' + file.name + ' wurde erfolgreich hochgeladen!'); },
'checkExisting' : './includes/check-exists.php'
            });
        });

这是uploadify.php的代码:

// Define a destination
$targetFolder = '/upload'; // Relative to the root

$verifyToken = md5('unique_salt' . $_POST['timestamp']);

if (!empty($_FILES) && $_POST['token'] == $verifyToken) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder;
    $targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name'];

    // Validate the file type
    $fileTypes = array('zip','rar','sit'); // File extensions
    $fileParts = pathinfo($_FILES['Filedata']['name']);

$dateiname = $targetFile;   
$ersetzen = '/homepages/37/d24392003/htdocs/modx/upload/';
$dateiname = str_replace($ersetzen, "", $dateiname);    

    if (in_array($fileParts['extension'],$fileTypes)) {
        move_uploaded_file($tempFile,$targetFile);
        mail('123@abc.com', 'Dateiupload', "Es wurde eine neue Datei hochgeladen\n\nDateiname: $dateiname", "from:123@abc.de");
    } else {
        echo 'Invalid file type.';
    }
}

因此脚本可以正常工作,php配置似乎还不错...任何人都可以做些小费吗?

干杯!

将文件大小限制设置为一个选项: 'fileSizeLimit' : '500MB',

$(function() {
    $('#data').uploadify({
        ...

        'fileSizeLimit' : '500MB', // added this, set to whatever value you like

        ...
    });
});

然后将其添加到主.htaccess文件中,以覆盖服务器上的所有默认限制(包括覆盖php.ini文件):

php_value upload_max_filesize 500M
php_value post_max_size 500M

如果出现 500 - Internal Server Error ,则可能意味着您无权通过.htaccess设置这些值。 您必须与您的网络服务器提供商联系。 请他们允许您设置AllowOverride选项。

选项B:

创建一个php.ini文件,并将其存储在与.htaccess文件相同的根目录中。 在上面添加两行,看看是否可行。 如果使用最后一种方法遇到500 Internal错误,则这可能也不起作用。 但是您可以尝试。

您是否尝试使用phpinfo();来查看是否实际加载了php.ini设置phpinfo(); 查看哪个php.ini文件已加载。

最后,根据我的经验,如果加载了正确的php.ini文件,但未显示更改,请尝试重新安装PHP,作为最后的选择

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM