mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-11-03 19:17:29 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			134 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
https://example.com {
 | 
						|
	reverse_proxy /path https://localhost:54321 {
 | 
						|
		header_up Host {upstream_hostport}
 | 
						|
		header_up Foo bar
 | 
						|
 | 
						|
		method GET
 | 
						|
		rewrite /rewritten?uri={uri}
 | 
						|
 | 
						|
		request_buffers 4KB
 | 
						|
 | 
						|
		transport http {
 | 
						|
			read_buffer 10MB
 | 
						|
			write_buffer 20MB
 | 
						|
			max_response_header 30MB
 | 
						|
			dial_timeout 3s
 | 
						|
			dial_fallback_delay 5s
 | 
						|
			response_header_timeout 8s
 | 
						|
			expect_continue_timeout 9s
 | 
						|
			resolvers 8.8.8.8 8.8.4.4
 | 
						|
 | 
						|
			versions h2c 2
 | 
						|
			compression off
 | 
						|
			max_conns_per_host 5
 | 
						|
			keepalive_idle_conns_per_host 2
 | 
						|
			keepalive_interval 30s
 | 
						|
 | 
						|
			tls_renegotiation freely
 | 
						|
			tls_except_ports 8181 8182
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 | 
						|
----------
 | 
						|
{
 | 
						|
	"apps": {
 | 
						|
		"http": {
 | 
						|
			"servers": {
 | 
						|
				"srv0": {
 | 
						|
					"listen": [
 | 
						|
						":443"
 | 
						|
					],
 | 
						|
					"routes": [
 | 
						|
						{
 | 
						|
							"match": [
 | 
						|
								{
 | 
						|
									"host": [
 | 
						|
										"example.com"
 | 
						|
									]
 | 
						|
								}
 | 
						|
							],
 | 
						|
							"handle": [
 | 
						|
								{
 | 
						|
									"handler": "subroute",
 | 
						|
									"routes": [
 | 
						|
										{
 | 
						|
											"handle": [
 | 
						|
												{
 | 
						|
													"handler": "reverse_proxy",
 | 
						|
													"headers": {
 | 
						|
														"request": {
 | 
						|
															"set": {
 | 
						|
																"Foo": [
 | 
						|
																	"bar"
 | 
						|
																],
 | 
						|
																"Host": [
 | 
						|
																	"{http.reverse_proxy.upstream.hostport}"
 | 
						|
																]
 | 
						|
															}
 | 
						|
														}
 | 
						|
													},
 | 
						|
													"request_buffers": 4000,
 | 
						|
													"rewrite": {
 | 
						|
														"method": "GET",
 | 
						|
														"uri": "/rewritten?uri={http.request.uri}"
 | 
						|
													},
 | 
						|
													"transport": {
 | 
						|
														"compression": false,
 | 
						|
														"dial_fallback_delay": 5000000000,
 | 
						|
														"dial_timeout": 3000000000,
 | 
						|
														"expect_continue_timeout": 9000000000,
 | 
						|
														"keep_alive": {
 | 
						|
															"max_idle_conns_per_host": 2,
 | 
						|
															"probe_interval": 30000000000
 | 
						|
														},
 | 
						|
														"max_conns_per_host": 5,
 | 
						|
														"max_response_header_size": 30000000,
 | 
						|
														"protocol": "http",
 | 
						|
														"read_buffer_size": 10000000,
 | 
						|
														"resolver": {
 | 
						|
															"addresses": [
 | 
						|
																"8.8.8.8",
 | 
						|
																"8.8.4.4"
 | 
						|
															]
 | 
						|
														},
 | 
						|
														"response_header_timeout": 8000000000,
 | 
						|
														"tls": {
 | 
						|
															"except_ports": [
 | 
						|
																"8181",
 | 
						|
																"8182"
 | 
						|
															],
 | 
						|
															"renegotiation": "freely"
 | 
						|
														},
 | 
						|
														"versions": [
 | 
						|
															"h2c",
 | 
						|
															"2"
 | 
						|
														],
 | 
						|
														"write_buffer_size": 20000000
 | 
						|
													},
 | 
						|
													"upstreams": [
 | 
						|
														{
 | 
						|
															"dial": "localhost:54321"
 | 
						|
														}
 | 
						|
													]
 | 
						|
												}
 | 
						|
											],
 | 
						|
											"match": [
 | 
						|
												{
 | 
						|
													"path": [
 | 
						|
														"/path"
 | 
						|
													]
 | 
						|
												}
 | 
						|
											]
 | 
						|
										}
 | 
						|
									]
 | 
						|
								}
 | 
						|
							],
 | 
						|
							"terminal": true
 | 
						|
						}
 | 
						|
					]
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 |