
У меня возникли проблемы при настройке nginx для обслуживания статических файлов angularjs.
Вот моя ситуация, я хочу, чтобы целевая страница моего приложения находилась под
domain.com
и приложение AngularJS в
domain.com/app
Теперь я борюсь с конфигурацией nginx. Я создал следующую конфигурацию сервера nginx:
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;
}
}
Но это не работает, я получаю эту ошибку в Firebug:
"NetworkError: 404 Not Found - http://domain.com/app/"
Есть идеи?
Хорошо, я добился некоторого прогресса, если я изменю следующее:
alias /usr/share/nginx/html/domain.com/app/public;
к следующему:
alias /usr/share/nginx/html/domain.com/app/public/;
(если я использую root вместо псевдонима, я получаю ошибку 403 denied)
Теперь я могу получить доступ к приложению, но у меня по-прежнему возникает ошибка 404 для файлов активов, например, один из них:
"NetworkError: 404 Not Found - http://example.com/app/assets/images/logo.png"
Активы находятся в каталоге:
/usr/share/nginx/html/example.com/app/public/app/assets/
но по какой-то причине nginx ищет ресурсы здесь:
/usr/share/nginx/html/example.com/app/public/assets/
Есть идеи?