【问题标题】:PHP Error 'Filesize is zero bytes' when uploading image SilverStripe上传图像 SilverStripe 时出现 PHP 错误“文件大小为零字节”
【发布时间】:2016-07-09 10:07:40
【问题描述】:

我刚刚设置了一个新的 Centos 7 服务器并通过 Capistrano 部署上传了我的 SilverStripe 项目。除了上传图片时我得到“文件大小为零字节”的文件上传之外,一切都运行良好。

资产文件夹符号链接到网站根目录之外的共享文件夹。

website
- current
- - (website root)
- shared
- - assets
- - - (uploads)
- - vendor
- - - (composer managed deps)

我上传的文件是 16kb。

所有文件和目录的权限都设置为 deployer:apache 755,资产文件夹的权限已设置为 775(设置为 777 仍然没有运气)。

我读过另一篇文章提到 php config 可能是一个问题。以下是一些相关的 php 设置:

  • max_execution_time: 30
  • max_file_uploads: 20
  • 最大输入时间:60
  • post_max_size: 8M
  • upload_max_filesize: 2M
  • upload_tmp_dir: /tmp

不确定是否还有其他人可能感兴趣,请告诉我,我会发布它们。

【问题讨论】:

  • 您是否尝试将upload_tmp_dir 设置为您的apache 用户具有读/写权限的某个目录?
  • 只是试一试,不开心。
  • 如果assets文件夹没有符号链接,是否还会出现上传错误?
  • @3dgoo 是的,几个小时前试过了,同样的问题。

标签: php silverstripe


【解决方案1】:

这通常是由于对资产目录的权限。

更改符号链接及其链接到的文件夹的所有者

sudo chown -R deployer:apache assets
sudo chown -R deployer:apache /path/to/assets

您可能还需要执行sudo chmod g+w assetssudo chmod g+w /path/to/assets 以允许其他组成员写入您的目录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多