2016-08-02 24 views
0

Ich habe Symfony 3 kürzlich auf einem neuen Ubuntu-Server installiert, zuvor habe ich WAMP benutzt, um meine symfony-Website zu betreiben, aber jetzt bin ich migriert.Symfony 3 kann meine .svg-Icons nicht finden

Alles läuft, außer auf einer meiner Seiten. Ich habe einige .svg-Symbole, um das Wetter anzuzeigen. Diese Symbole erhalten einen Fehler 404.

Ich habe sichergestellt, dass sie an der richtigen Stelle sind, und ich habe keine der HTML, die Links zu ihnen von der Windows-Version geändert, die gut funktioniert.

Sie sind in web> icons> Wetter gelegen

Mein img-Tag <img src="icons/weather/{{ item.icon }}.svg" /> item.icon Zweig wird mit von meinem Wetter RSS-Feed zu greifen.

Das gibt GET http://192.168.0.53/icons/weather/cloud.svg 404 (Not Found) in inspect aus und ich kann nicht darauf zugreifen, indem ich manuell zu dieser URL gehe.

Gibt es ein .htaccess-Problem, das dazu führt, dass meine Bilder nicht korrekt gefunden werden?

Antwort

0

In Ordnung, ich fand die Antwort.

Ich hatte einen Gedanken (wie der in meinem Kommentar), dass Symfony auf seine eigene Weise einen Ordner namens "icons" im Webordner suchen/benutzen könnte.

Ob dies der Fall ist oder nicht weiß ich nicht, aber ich habe die Symbole in einen Anbieterordner verschoben. Die Adresse lautet jetzt vendor/icons/weather/cloud.svg und IT WORKS!

Also ich denke, was wir daraus lernen können, ist entweder ein dummer Fehler von mir, von dem ich immer noch nicht weiß, oder Sie können nicht einen Ordner namens "Icons" im Webordner verwenden.

Danke für Sie Hilfe Alvin

1

Ich bin mir nicht sicher, ob so etwas wie dies funktionieren könnte:

<img src="{{ asset('icons/weather/'.{{ item.icon }}.'.svg') }}" /> 

Können Sie es versuchen! Sie müssen möglicherweise etwas ändern.

+0

Das gibt mir einen 500 Fehler. Das ist im Grunde ein PHP-Fehler. Ich vermasselte mich mit der Syntax, die nicht funktionierte und dann habe ich '' was zeigt ' 'in inspizieren, aber ich bekomme immer noch meine 404 Fehler. :/ – GiantJelly

+0

Und der Ordner Symbole befindet sich direkt unter Ihrem Webstammordner? Ich denke, du bekommst den 404-Fehler wegen des Pfades, der wahrscheinlich 'icons/weather/cloud.svg' sein sollte. Versuchen Sie, diese URL direkt in Ihrem Browser einzugeben, um zu sehen, dass Sie die Datei tatsächlich abrufen können. Wenn Sie keinen Zugriff auf einen Browser haben, versuchen Sie es mit den Befehlen curl oder wget (über die Befehlszeile). Sie müssen verstehen, warum der 404-Fehler - weil das auch ein Genehmigungsfehler sein könnte (es ist möglich). –

+0

Ich habe versucht, die URL '{address}/icons/weather/cloud.svg' auf meinem Ubuntu-Server zu suchen und erhalte die Seite" Not found ". Ich suche dann genau dasselbe auf meinem Windows-Server und lädt mir die .svg. Ich habe chmod über den gesamten www-Ordner ausgeführt, um Berechtigungen auszuschließen. Ich habe immer noch keine Ahnung, was das sein könnte. Könnte symfony einen Ordner namens "icons" benutzen und verwirrt werden? Die Symbole befinden sich unter "www/web/icons/weather/cloud.svg" – GiantJelly