40 lines
1.4 KiB
Plaintext
40 lines
1.4 KiB
Plaintext
# Voorbeeldconfiguratie voor de nginx server op de Raspberry Pi die de
|
|
# gebouwde react-frontend (dist/) daadwerkelijk serveert.
|
|
#
|
|
# Deze Pi is NIET rechtstreeks vanaf het internet bereikbaar; de andere
|
|
# Raspberry Pi (met de nginx reverse proxy, zie reverse-proxy-nginx.conf.example)
|
|
# stuurt inkomend verkeer door naar deze server op het interne netwerk.
|
|
#
|
|
# Kopieer dit bestand handmatig naar bijvoorbeeld
|
|
# /etc/nginx/sites-available/slpsoftware-test.conf op de webserver-Pi,
|
|
# maak een symlink in sites-enabled, en herlaad nginx (`sudo nginx -t && sudo systemctl reload nginx`).
|
|
|
|
server {
|
|
# Alleen luisteren op het interne (LAN) IP-adres van deze Pi, niet op 0.0.0.0,
|
|
# zodat deze poort niet per ongeluk vanaf buiten het netwerk bereikbaar is.
|
|
listen 192.168.1.103:80;
|
|
listen [::]:80;
|
|
|
|
server_name _;
|
|
|
|
root /html/test/slpsoftware;
|
|
index index.html;
|
|
|
|
# De React-app gebruikt client-side routing (React Router), dus onbekende
|
|
# paden moeten terugvallen op index.html in plaats van een 404 te geven.
|
|
location / {
|
|
try_files $uri $uri/ /index.html;
|
|
}
|
|
|
|
# Statische assets mogen langer gecachet worden.
|
|
location ~* \.(?:css|js|svg|png|jpg|jpeg|gif|ico|woff2?)$ {
|
|
try_files $uri =404;
|
|
expires 7d;
|
|
add_header Cache-Control "public";
|
|
}
|
|
|
|
# Doorgeven van het echte client-IP en protocol, afkomstig van de reverse proxy.
|
|
set_real_ip_from 192.168.1.0/24;
|
|
real_ip_header X-Forwarded-For;
|
|
}
|