Reactjs nginx同时提供django静态文件和react静态文件
我最近正试图让nginx连接我基于django的后端和基于react的前端。这是我的nginx配置文件:Reactjs nginx同时提供django静态文件和react静态文件,reactjs,django,nginx,Reactjs,Django,Nginx,我最近正试图让nginx连接我基于django的后端和基于react的前端。这是我的nginx配置文件: upstream api { server backend:8000; } server { listen 8080; location /api/ { uwsgi_pass backend:8000; include /etc/nginx/uwsgi_params; } location /admin/ {
upstream api {
server backend:8000;
}
server {
listen 8080;
location /api/ {
uwsgi_pass backend:8000;
include /etc/nginx/uwsgi_params;
}
location /admin/ {
uwsgi_pass backend:8000;
include /etc/nginx/uwsgi_params;
}
# ignore cache frontend
location ~* (service-worker\.js)$ {
add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
expires off;
proxy_no_cache 1;
}
location / {
root /var/www/frontend;
try_files $uri /index.html;
}
location /static {
alias /vol/static;
}
location /static/rest_framework/ {
alias /vol/static;
}
}
但是,问题是,我的manage.py collect static会将django静态文件放入/vol/static
但是,我的react构建在/var/www/frontend/
中,因此当我尝试访问默认/url时,它会返回一个空白页面。但是,如果我删除
location /static {
alias /vol/static;
}
location /static/rest_framework/ {
alias /vol/static;
}
它将服务于我的django管理页面,没有任何css。如何在不将两个静态文件放在同一目录下的情况下轻松解决此问题?如果它们不在同一位置,为什么它们都有相同的别名?嘿@iklinac我指的是react的index.html而不是restframework