diff --git a/docker/Dockerfile.frontend b/docker/Dockerfile.frontend index b6c9064..ab3fcad 100644 --- a/docker/Dockerfile.frontend +++ b/docker/Dockerfile.frontend @@ -32,7 +32,8 @@ FROM nginx:alpine # Adjust /usr/src/app/build -> /usr/src/app/dist if you’re using Angular/Vue #COPY --from=build /usr/src/app/build /usr/share/nginx/html COPY --from=build /usr/src/app/dist /usr/share/nginx/html - +# Copy custom nginx configuration for SPA routing +COPY docker/nginx.conf /etc/nginx/conf.d/default.conf # Expose HTTP port EXPOSE 80 diff --git a/docker/nginx.conf b/docker/nginx.conf new file mode 100644 index 0000000..160c405 --- /dev/null +++ b/docker/nginx.conf @@ -0,0 +1,46 @@ +server { + listen 80; + listen [::]:80; + server_name localhost; + + #access_log /var/log/nginx/host.access.log main; + + # SPA routing: try files, fallback to index.html + location / { + try_files $uri $uri/ /index.html; + root /usr/share/nginx/html; + index index.html index.htm; + } + + #error_page 404 /404.html; + + # redirect server error pages to the static page /50x.html + # + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } + + # proxy the PHP scripts to Apache listening on 127.0.0.1:80 + # + #location ~ \.php$ { + # proxy_pass http://127.0.0.1; + #} + + # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 + # + #location ~ \.php$ { + # root html; + # fastcgi_pass 127.0.0.1:9000; + # fastcgi_index index.php; + # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; + # include fastcgi_params; + #} + + # deny access to .htaccess files, if Apache's document root + # concurs with nginx's one + # + #location ~ /\.ht { + # deny all; + #} +}