This blocks a bunch of AI scrapers from Forgejo, which seems to be particularly attractive. Especially meta-externalagent has been scraping very excessively. The list comes from https://github.com/ai-robots-txt/ai.robots.txt, let's see how often this needs updating. Change-Id: I55ae7c42c6a3eeff6f0457411a8b05d55cb24f65 Reviewed-on: https://cl.snix.dev/c/snix/+/30370 Autosubmit: Florian Klink <flokli@flokli.de> Tested-by: besadii Reviewed-by: edef <edef@edef.eu>
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			735 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			735 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { depot, ... }:
 | |
| 
 | |
| {
 | |
|   imports = [
 | |
|     ./base.nix
 | |
|   ];
 | |
| 
 | |
|   config = {
 | |
|     services.nginx.virtualHosts.forgejo = {
 | |
|       serverName = "git.snix.dev";
 | |
|       enableACME = true;
 | |
|       forceSSL = true;
 | |
|       locations."=/robots.txt".alias = "${depot.third_party.sources.ai-robots-txt}/robots.txt";
 | |
|       locations."/" = {
 | |
|         proxyPass = "http://127.0.0.1:3000";
 | |
|         extraConfig = ''
 | |
|           include ${depot.third_party.sources.ai-robots-txt + "/nginx-block-ai-bots.conf"};
 | |
| 
 | |
|           proxy_ssl_server_name on;
 | |
|           proxy_pass_header Authorization;
 | |
| 
 | |
|           # This has to be sufficiently large for uploading layers of
 | |
|           # non-broken docker images.
 | |
|           client_max_body_size 1G;
 | |
|         '';
 | |
|       };
 | |
|     };
 | |
|   };
 | |
| }
 |