Nginx - статический файл, содержащий путаницу с корнем и псевдонимом
Мне нужно обслуживать мое приложение через сервер приложений по адресу8080
и мои статические файлы из каталога, не касаясь сервера приложений. Конфиг nginx у меня есть что-то вроде этого ...
# app server on port 8080
# nginx listens on port 8123
server {
listen 8123;
access_log off;
location /static/ {
# root /var/www/app/static/;
alias /var/www/app/static/;
autoindex off;
}
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Теперь с этим конфигом все работает нормально. Обратите внимание, чтоroot
директива закомментирована.
Если я активируюroot
и деактивироватьalias
- перестает работать. Тем не менее, когда я удаляю трейлинг/static/
отroot
это начинает работать снова.
Может ли кто-нибудь объяснить, что происходит? Также, пожалуйста, объясните ясно и многословно, в чем различия междуroot
а такжеalias
и их цели.