繁体   English   中英

在Symfony中使用未知用户代理清空上载的文件

[英]Empty uploaded file in Symfony with unknown User Agent

我正在使用Symfony收集REST API,并且不断收到一个空的上传文件的异常。 在每天大约有5000个用户的应用程序中,它每天大约发生5-10次。

这是相关代码:

$receipt = $request->files->get('receipt');

if (!$receipt || !($receipt instanceof UploadedFile) || !$receipt->isValid()) {
    throw new \Exception('No uploaded receipt image. Maybe the image is too large?');
}

我已经将upload_max_filesizepost_max_size增加到一个很高的值,但是错误仍然出现。 我注意到用户代理始终是“奇怪的”:

User-Agent: myappname/104 CFNetwork/808.0.2 Darwin/16.0.0

其中myappname是我的移动应用程序的名称(只有最后一部分,没有com.mycompany.myappname)。 可能是模拟器还是黑客尝试?

如果upload_max_filesize大于post_max_size,则增加post_max_size,则它将大于upload_max_size,并且如果post_max_size的值大于memory_limit,则要增加memory_limit,则它将大于post_max_size。 如果仍然发生,那么如果前端和后端位于单独的域用户“ Nelmio CORS”设置中,则尝试使用ip或域限制REST API

# Nelmio CORS
nelmio_cors:
    defaults:
        allow_origin:  ["%cors_allow_origin%"]
        allow_methods: ["POST", "PUT", "GET", "DELETE", "OPTIONS"]
        allow_headers: ["content-type", "authorization"]
        max_age:       3600
    paths:
        '^/': ~

通过使用作曲家安装nelmio / cors-bundle或类似文件。

暂无
暂无

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

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