Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SF2][Symfony] Problem z wyświetlaniem obrazków na localhoście
Forum PHP.pl > Forum > PHP > Frameworki
Foxx
Pracując na localhoście mam problem z wyświetlaniem obrazków. Mówiąc w skrócie - nie wiem jak poinformować SF2, że base path znajduje się w localhost/mojprojekt/web/ a nie w localhost/ tak jak domyślnie wydaje się uważać.

Mój projekt działa w lokalizacji: localhost/mojprojekt/
Nie wyświetlają mi się obrazki. Gdy projekt uruchamiam na serwerze pod adresem domena.pl/ (domena kieruje do web/) to obrazki widać no bo ścieżki wtedy są poprawne.

Przykładowa ścieżka do obrazka, który się nie pojawia wygląda tak:
Kod
<img title="foto wilk.jpg" width="75" height="60" src="/uploads/media/default/0001/01/thumb_2_admin.jpeg">


Czyli ten obrazek jest szukany w localhost/uploads/... - a między localhost i uploads jest jeszcze /mojprojekt/web/ - gdy dodam ten kawałek ścieżki to widzę obrazek.

Na serwerze problemu nie ma bo ścieżki są od razu poprawne: mojadomena.pl/uploads/... - to się zgadza.

Jak mogę zlikwidować ten problem na localhoście?
Crozin
Najłatwiejszym, a przy tym i najwygodniejszym sposobem jest po prostu wyeliminowanie różnicy w ścieżkach poprzez skorzystanie z lokalnego adresu w formie: http://mojprojekt.localhost/uploads/media/...mb_2_admin.jpeg

1. W pliku z hostami (/etc/hosts bądź C:\Windows\system32\drivers\etc\hosts) dodaj wpis: mojprojekt.localhost 127.0.0.1
2. Utwórz vhosta na lokalnym serwerze HTTP działającego dla w/w hosta, gdzie DocumentRoot będzie zdefiniowany na katalog web.
Foxx
Dzięki, to rozwiązanie mi się podoba:)

(i działa)
wujek2009
Czy przy wyświetlaniu wszelkich zasobów (css, js, img, itd) nie lepiej skorzystać z asset w widoku? Wówczas ścieżka sama się ustali i będzie czytać normalnie adres według folderu gdzie trzymasz cały projekt.
Foxx
Akurat w tym konkretnym przypadku chodziło mi o gotowy zainstalowany bundle (Media Bundle) - chciałbym go zainstalować i nie wnikać w jaki sposób on sobie wyświetla obrazki. Drugi przykład to była konfiguracja bundla Sonata Admin - w config podajesz adres logo, które chcesz mieć wyświetlone w taki sposób:
title_logo: /bundles/fetchamfrontend/images/small-logo.png
No tu też nie chcę wnikać jak sobie ten bundle radzi z taką ścieżką, chciałbym żeby obrazek się pokazał, a on pokazywał się tylko na serwerze, u mnie nie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.