我试图在Symfony控制器中借助BinaryFileResponse直接在浏览器中显示图像。
在我们以前的服务器上,这段代码运行良好:
$response = new BinaryFileResponse($filePath, 200, [], true, null, true);
$response->headers->addCacheControlDirective('no-cache', true);
$response->headers->addCacheControlDirective('max-age', 0);
$response->headers->addCacheControlDirective('must-revalidate', true);
$response->headers->addCacheControlDirective('no-store', true);
return $response;
但是,由于新服务器上的迁移,当$ filePath包含重音(àéè等)时,它会强制下载图像而不是仅显示它。
两台服务器都安装了PHP 7.0.10。
我错过了配置或什么?我找不到它为什么会发生。
任何帮助都非常感激。谢谢。
答案 0 :(得分:1)
我发现了我的问题。
Symfony无法在包含重音符号的路径中获取文件类型mime。为了实现这一点,我必须在Apache中激活PHP扩展php_fileinfo。