Tôi cần phục vụ ứng dụng của mình thông qua máy chủ ứng dụng của mình tại 8080
và các tệp tĩnh của tôi từ một thư mục mà không cần chạm vào máy chủ ứng dụng. Cấu hình nginx tôi có là một cái gì đó như thế này ...
# 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;
}
}
Bây giờ, với cấu hình này, mọi thứ đều hoạt động tốt. Lưu ý rằng root
chỉ thị được nhận xét.
Nếu tôi kích hoạt root
và hủy kích hoạt alias
- nó sẽ ngừng hoạt động. Tuy nhiên, khi tôi xóa dấu vết /static/
khỏi root
nó thì nó bắt đầu hoạt động trở lại.
Ai đó có thể giải thích những gì đang xảy ra. Ngoài ra, vui lòng giải thích rõ ràng và rõ ràng sự khác biệt giữa root
và alias
, và mục đích của chúng.