Aveți mai mult de o aplicație unghiulară deservită de un singur proxy invers nginx. Iată configurația mea pe care am încercat-o.
lucrător_procese 1;
error_log <%= ENV["APP_ROOT"] %>/nginx/logs/error.log;
evenimente { worker_connections 1024; }
http {
client_max_body_size 3G;
log_format upstream_time '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent" '
'rt="$request_time" uct="$upstream_connect_time" uht="$upstream_header_time" urt="$upstream_response_time" ua="$upstream_addr" ';
access_log <%= ENV["APP_ROOT"] %>/nginx/logs/access.log upstream_time;
Server {
asculta <%= ENV["PORT"] %>;
nume_server gazdă locală;
root <%= ENV["APP_ROOT"] %>/public;
proxy_set_header X-Real-IP $adresă_la distanță;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $schema;
proxy_http_versiunea 1.1;
microservicii #springboot
locație /monitoringserv/details/ {
<% dacă ENV["FORCE_HTTPS"] %>
dacă ($http_x_forwarded_proto != „https”) {
returnează 301 https://$host$request_uri;
}
<% final %>
proxy_pass https://monitoring-c-serv.apps-dev.net;
}
locație /dashboardserv/queue/ {
<% dacă ENV["FORCE_HTTPS"] %>
dacă ($http_x_forwarded_proto != „https”) {
returnează 301 https://$host$request_uri;
}
<% final %>
proxy_pass https://dashboard-c-serv.apps-dev.net;
}
#default UI landing page
locație ~ .(html|js|css|eot|svg|ttf|woff|woff2|png|gif|ico|jpg|jpeg)$ {
proxy_pass https://dashboard.apps-dev.net;
}
locație ~ ^/admin/.*\.(html|js|css|eot|svg|ttf|woff|woff2|png|gif|ico|jpg|jpeg)$ {
try_files $request_uri $request_uri/ =404;
}
locație ~ ^/monitoring/.*\.(html|js|css|eot|svg|ttf|woff|woff2|png|gif|ico|jpg|jpeg)$ {
try_files $request_uri $request_uri/ =404;
}
#1-Adresa URL implicită a UI.
Locație / {
proxy_pass https://dashboard.apps-dev.net;
}
locație /admin/ {
proxy_pass https://admin.apps-dev.net;;
}
locație /monitorizare/ {
proxy_pass https://monitoring.apps-dev.net;;
}
}
}
De asemenea, construiți aplicații unghiulare cu
ng build --prod --base-href /admin/
ng build --prod --base-href /monitoring/
Când lansez aplicația de tablou de bord a aplicației s-a deschis bine și când încarc administratorul sau monitorizarea, am primit o eroare care spune că lipsesc fișierele statice.