diff --git a/site-cookbooks/kosmos_gitea/templates/default/nginx_conf_web.erb b/site-cookbooks/kosmos_gitea/templates/default/nginx_conf_web.erb index 13c6dd2..1b40b4d 100644 --- a/site-cookbooks/kosmos_gitea/templates/default/nginx_conf_web.erb +++ b/site-cookbooks/kosmos_gitea/templates/default/nginx_conf_web.erb @@ -18,6 +18,8 @@ server { client_max_body_size 121M; + proxy_intercept_errors on; + location ~ ^/(avatars|repo-avatars)/.*$ { proxy_buffers 1024 8k; proxy_pass http://_gitea_web; @@ -52,5 +54,18 @@ server { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; + error_page 404 = @slow_404; + } + + # Slow down 404 responses to make scraping random URLs less attractive + location @slow_404 { + internal; + default_type text/plain; + content_by_lua_block { + ngx.sleep(10) + ngx.status = 404 + ngx.say("Not Found") + ngx.exit(ngx.HTTP_NOT_FOUND) + } } }