forked from zaclys/searxng
		
	plugin limiter: check only /image_proxy and /search
also adjust the number of req/time
This commit is contained in:
		
							parent
							
								
									bf987bb608
								
							
						
					
					
						commit
						b99ccd7c02
					
				
					 1 changed files with 7 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -42,15 +42,15 @@ def is_accepted_request(inc_get_counter) -> bool:
 | 
			
		|||
            return False
 | 
			
		||||
        return True
 | 
			
		||||
 | 
			
		||||
    c = inc_get_counter(interval=25, keys=[b'IP limit, all paths', x_forwarded_for])
 | 
			
		||||
    if request.path == '/search' and ('q' in request.args or 'q' in request.form):
 | 
			
		||||
        c = inc_get_counter(interval=20, keys=[b'IP limit, burst', x_forwarded_for])
 | 
			
		||||
        if c > 30:
 | 
			
		||||
            return False
 | 
			
		||||
 | 
			
		||||
    c = inc_get_counter(interval=60, keys=[b'useragent limit, all paths', x_forwarded_for, user_agent])
 | 
			
		||||
    if c > 30:
 | 
			
		||||
        c = inc_get_counter(interval=600, keys=[b'IP limit, 10 minutes', x_forwarded_for])
 | 
			
		||||
        if c > 300:
 | 
			
		||||
            return False
 | 
			
		||||
 | 
			
		||||
    if request.path in ('/', '/search') and ('q' in request.args or 'q' in request.form):
 | 
			
		||||
        if re_bot.match(user_agent):
 | 
			
		||||
            return False
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue