2016-04-19 8 views
-2

Ich erstellte einfache Kolbensite mit könnte von Assets/statische Dateien. Hochgeladen auf EC2, Server rendert Vorlagen korrekt, aber statische Dateien absolut nicht verfügbar.AWS Elasticbean behandelt nicht Flasch statische Vermögenswerte

Ich habe über SSH verbunden und überprüft, ob Setup alle corrent. Der Pfad zum Anwendungsstamm lautet /opt/python/current/app/, vollständiger Pfad zur CSS-Datei /opt/python/current/app/mysite/static/css/stylesheet.css.

Entsprechend Alias ​​in Webkonsole angegeben und auf Apache wsgi.conf übertragen: Alias /static/ /opt/python/current/app/mysite/static <Directory /opt/python/current/app/mysite/static> Order allow,deny Allow from all </Directory> Versuch al mindestens CSS-Datei (http://xxx.xxx.us-west-2.elasticbeanstalk.com/static/css/stylesheet.css) zu bekommen - bekam 404.

prüfen, ob die Dateien vorhanden sind und statische Ordner zeigen auf korrekter Standort: Hinzufügen von Options + Indexes zum Verzeichnisabschnitt oben, Öffnen der URL http://xxx.xxx.us-west-2.elasticbeanstalk.com/static/ und Anzeigen des Inhalts meines statischen Ordners: css, js, lib.

Noch eine Überprüfung: Datei 1.css zu statischen Stamm hinzufügen, im Browser als Verzeichnis öffnen, sehen, dass meine Datei erschien. Versucht es zu bekommen, klickt auf diese Datei - hat 404 wieder!

Weder eine zusätzliche Einstellung wurde hinzugefügt noch dotfiles. Alle dynamischen Seiten werden erfolgreich abgerufen.

Wie behandelt man statische Dateien mit EC2?

+0

'Elastic Beanstalk = EC2' haben Sie Ihre Sicherheitsgruppen geprüft!? – Snuggert

+0

@Snuggert-Sicherheitsgruppe auf die gesamte Webserver-Instanz angewendet. I.e. Wenn ich Sicherheitsgruppe verpasst habe, habe ich überhaupt keine Antwort vom Server erhalten. Mein Problem bezog sich NUR auf statischen Inhalt. –

Antwort

0

waren einfach und stumm im Konfigurationsbereich von /static/ alias I definierte slash verpassten Hinter.

Falsch: mysite/static

Richtig: mysite/static/

0

Flask dient Routen zu (root_folder)/static und Sie zeigen Ihre Apache-Konfiguration auf eine Route, die (root_folder)/mysite/static ist und Kolben kann keine Routen für diesen Ort so 404'ing finden.

Lösungen:

  1. Änderung
  2. statischer Ordner Flask
  3. bewegen aktuelle statische Ordner in der Lösung (root_folder)
+0

Nein, wie ich beschrieben habe, als ich die Verzeichnisliste eingeschaltet habe, kann ich alle meine statischen Dateien sehen. Dies bedeutet, dass die Verzeichnispunkte den richtigen Ort angeben. Auch die Flask-Anwendung läuft korrekt im Ordner "mysite". –