nginx, das die AngularJS-App bedient, gibt 404 Nicht gefunden zurück

nginx, das die AngularJS-App bedient, gibt 404 Nicht gefunden zurück

Ich habe Probleme beim Konfigurieren von Nginx zum Bereitstellen statischer AngularJS-Dateien.

Dies ist meine Situation, ich möchte die Zielseite meiner Anwendung unter

domain.com

und die AngularJS-App unter

domain.com/app

Jetzt kämpfe ich mit der Nginx-Konfiguration. Ich habe eine Nginx-Serverkonfiguration wie folgt erstellt:

server {
    listen   80; ## listen for ipv4; this line is default and implied

    index index.html index.htm;

    server_name domain.com www.domain.com;

    location / {
            root /usr/share/nginx/html/domain.com;
    }

    location /app {
        alias /usr/share/nginx/html/domain.com/app/public;
    }
}

Aber das funktioniert nicht. Ich erhalte in Firebug diesen Fehler:

"NetworkError: 404 Not Found - http://domain.com/app/"

Irgendeine Idee?


Ok, ich habe einige Fortschritte gemacht, wenn ich Folgendes ändere:

alias /usr/share/nginx/html/domain.com/app/public;

Zu dem Folgendem:

alias /usr/share/nginx/html/domain.com/app/public/;

(wenn ich root statt Alias ​​verwende, bekomme ich die Fehlermeldung 403 Forbidden)

Ich kann jetzt auf die Anwendung zugreifen, erhalte aber immer noch eine 404-Fehlermeldung bei den Asset-Dateien. Eine davon lautet beispielsweise:

"NetworkError: 404 Not Found - http://example.com/app/assets/images/logo.png"

Assets befinden sich im Verzeichnis:

/usr/share/nginx/html/example.com/app/public/app/assets/

aber aus irgendeinem Grund sucht Nginx hier nach Assets:

/usr/share/nginx/html/example.com/app/public/assets/

irgendeine Idee?

verwandte Informationen