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?