diff --git a/laravel/Dockerfile b/laravel/Dockerfile new file mode 100644 index 0000000..b49fe77 --- /dev/null +++ b/laravel/Dockerfile @@ -0,0 +1,4 @@ +ARG FROM_IMAGE=skpr/nginx-fpm-php:v2-latest +FROM ${FROM_IMAGE} + +COPY --chown=skpr:skpr etc /etc diff --git a/laravel/dev/Dockerfile b/laravel/dev/Dockerfile new file mode 100644 index 0000000..c841d7a --- /dev/null +++ b/laravel/dev/Dockerfile @@ -0,0 +1,2 @@ +ARG FROM_IMAGE=skpr/nginx-fpm-laravel:v2-latest +FROM ${FROM_IMAGE} diff --git a/laravel/etc/nginx/default.conf b/laravel/etc/nginx/default.conf new file mode 100644 index 0000000..ca725b8 --- /dev/null +++ b/laravel/etc/nginx/default.conf @@ -0,0 +1,57 @@ +map $http_cloudfront_forwarded_proto $cloudfront_proto { + default "http"; + https "https"; +} + +map $http_cloudfront_forwarded_proto $cloudfront_https { + default "off"; + https "on"; +} + +map $http_cloudfront_forwarded_proto $strict_transport_security { + default ""; + https "max-age=31536000"; +} + +map $http_x_amzn_trace_id $processed_request_id { + default "$http_x_amzn_trace_id"; + '' "$request_id"; +} + +map $uri $static_status_code { + include /etc/nginx/static_status_codes.conf; +} + +map $host$uri $redirectdomain { + include /etc/nginx/redirects.conf; +} + +map $request_uri $header_x_robots_tag { + include /etc/nginx/robots.conf; +} + +include /etc/nginx/http.conf; + +server { + listen 8080; + + root /data/public; + + port_in_redirect off; + + if ($redirectdomain) { + return 301 $redirectdomain; + } + + if ($static_status_code = 404) { + return 404; + } + + if ($static_status_code = 403) { + return 403; + } + + include /etc/nginx/conf.d/header/*.conf; + include /etc/nginx/conf.d/location/*.conf; + include /etc/nginx/conf.d/overrides/*.conf; +}