【问题标题】:Upload limits on Heroku / Bucketeer (S3)Heroku / Bucketeer (S3) 的上传限制
【发布时间】:2017-11-20 05:41:27
【问题描述】:

我正在使用 Heroku 和他们的 S3 插件 - “Bucketeer”。

我有这个工作,我可以上传图片没问题。问题是我不关心上传图片。我的应用程序处理上传 MP3(没什么险恶的 - 它是本地乐队的网络应用程序)。

我无法上传 MP3。它不会出错或发生任何错误,只是文件不会以 S3 结束 - 而图片上传的方式完全相同。

编辑添加 - 这不是文件类型问题,因为我通过上传一个非常小的 mp3 文件进行了测试,效果很好。

代码如下:

        <form class="form" action="../model/process-track-upload.php" method="post" enctype="multipart/form-data">
              <div class="row">
                <div class="col-xs-12 col-sm-4">
                  <div class="dashboard-widget">
                      <h3>Add a song to your collection</h3>
                      <input class="input" type="text" name="trackname" placeholder="Track Name" required/>
                      <input class="input-margin" name="userfile" type="file">
                      <input type="hidden" name="userID" value="<?php echo $userID ?>" />
                      <button class="btn btn-large btn-block " type="submit" name="btn-upload">upload</button>
                  </div>
                </div>
              </form>

以及后端代码:

require('../vendor/autoload.php');

$s3 = Aws\S3\S3Client::factory();
$bucket = getenv('S3_BUCKET')?: die('No "S3_BUCKET" config var in found in env!');

if($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_FILES['userfile']) && $_FILES['userfile']['error'] == UPLOAD_ERR_OK && is_uploaded_file($_FILES['userfile']['tmp_name'])) {

    try {

        $upload = $s3->upload($bucket, $_FILES['userfile']['name'], fopen($_FILES['userfile']['tmp_name'], 'rb'), 'public-read');
?>
        <p>Upload <a href="<?=htmlspecialchars($upload->get('ObjectURL'))?>">successful</a> :)</p>
<?php } catch(Exception $e) { ?>
        <p>Upload error :(</p>
<?php } }

【问题讨论】:

    标签: php heroku file-upload amazon-s3


    【解决方案1】:

    这个问题的答案在于默认的 php 设置。

    但是,当我使用 Heroku 时,我无法访问 php.ini 文件。

    所以答案是创建一个 .users.ini 文件,该文件类似于用户创建的 php.ini 覆盖。

    在该文件中,我只设置了以下参数:

    upload_max_filesize = 15M
    post_max_size = 15M
    max_input_time = 0
    LimitRequestBody 0
    

    在这之后我很高兴!

    【讨论】:

      猜你喜欢
      • 2015-01-10
      • 2012-09-23
      • 2021-05-19
      • 2013-08-29
      • 1970-01-01
      • 2016-11-10
      • 1970-01-01
      • 2019-07-14
      • 2011-10-26
      相关资源
      最近更新 更多