我是Symfony的新手,我的问题很简单,我只是无法从某个目录加载图像并将其显示为树枝。我有这个上传文件夹位于我的Symfony项目的根目录中(在web文件夹之外)。此文件夹只是通过Linux文件系统链接到其他VM并具有原始上载文件夹。我尝试使用php&#39>来检查它是否存在
file_exists('/var/www/html/<projname>/upload/somefolder/image.png');
并且它显示图像存在,但是当我尝试在树枝中显示图像时,它始终显示未找到404错误且图像未显示。我已经这样做了:
<img src="/var/www/html/<projname>/upload/somefolder/image.png" />
和
<img src="/upload/somefolder/image.png" />
symfony
如何处理这种情况?
答案 0 :(得分:0)
如果您想获取根目录的路径,可以尝试下面的代码。 Here是文件上传的最佳示例。
$this->get('kernel')->getRootDir() . '/../web' . $this->getRequest()->getBasePath();
可能this也可以帮助你。
答案 1 :(得分:0)
我建议使用asset()
(请参阅https://symfony.com/doc/current/templating.html#templating-assets),但这也要求您将文件夹放在项目 web / - 目录下,以便symfony可以访问它和网络服务器(合并)。
由于您使用的是Linux,因此很简单:
cd /var/www/html/<projname>/
ln -s upload web/upload
现在您可以简单地引用您的资产,例如:
{{ asset('upload/somefolder/image.png') }}