путь изображения symfony работает только без порта

С помощью службы загрузки я могу передать файлы в правильный каталог / var / www / html / test / tmp , но мои изображения отображаются неправильно. В twig я вызываю изображение с помощью:

<img src="{{asset('test/tmp/'~img)}}" alt="user image"> 

Путь создается правильно …

ip_server: порт / тест / TMP / imgfile.jpg

но отображается только текст по умолчанию, когда я пытаюсь загрузить свою страницу, и что странно, если я открою путь на внешней вкладке и удалю порт, будет показано правильное изображение. Кто-нибудь знает эту проблему?

Мой контроллер выглядит так:

 <?php namespace AppBundle\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\HttpFoundation\Request; use AppBundle\Entity\Users; use AppBundle\Service\FileUploader; use Symfony\Component\HttpFoundation\File\UploadedFile; use Symfony\Component\HttpFoundation\File\File; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\SubmitType; use Symfony\Component\Form\Extension\Core\Type\FileType; class DefaultController extends Controller { /** * @Route("/bearbeiten/{id}", name="edit") */ public function editAction($id, Request $request, FileUploader $fileUploader){ //Daten aus der Datenbank mit $id $listen = $this->getDoctrine() ->getRepository('AppBundle:Users') ->find($id); $img = $listen->getBild(); //Formular wird erstellt $form = $this->createFormBuilder($listen) ->add('vorname', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('nachname', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('strasse', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('ort', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('plz', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('beschreibung', TextType::class, array('attr'=>array('class'=>'form-control', 'style'=>'margin-bottom:0.5cm; width:50%;'))) ->add('bild', FileType::class, array('required'=>false, 'label'=>'Bild (JPEG-Datei)', 'data_class'=>null)) ->add('save', SubmitType::class, array('label'=>'Speichern', 'attr'=>array('class'=>'btn btn-primary'))) ->add('home', SubmitType::class, array('label'=>'Zurück', 'attr'=>array('class'=>'btn btn-default'))) ->getForm(); $form->handleRequest($request); //Falls die Form valid ist.... if($form->isSubmitted() && $form->get('save')->isClicked()){ //Doctrine aktivieren $em=$this->getDoctrine()->getManager(); $user = $em->getRepository(Users::class)->find($id); $file = $form['bild']->getData(); $filename = $fileUploader->upload($file); $user->setBild($filename); $em->flush(); return $this->redirectToRoute('homepage'); } if ($form->get('home')->isClicked()){ return $this->redirectToRoute('homepage'); } return $this->render('main/edit.html.twig', array('listen'=>$listen, 'form'=>$form->createView(), 'img'=>$img)); } } 

Заранее благодарю за любую помощь 🙂

Вы можете попробовать с конфигурационными активами:

config.yml

 # app/config/config.yml framework: # ... assets: packages: uploaded_files: base_urls: 'http://ip_server:port/test/tmp/' 

и использовать в веточке

 <img src="{{ asset(img, 'uploaded_files') }}"> 

doc: https://symfony.com/doc/current/reference/configuration/framework.html#packages