Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
1ed90df6
Commit
1ed90df6
authored
Sep 25, 2014
by
Phillip Webb
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '1.1.x'
parents
0c63406b
bff39e95
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
23 additions
and
3 deletions
+23
-3
ServerProperties.java
...ingframework/boot/autoconfigure/web/ServerProperties.java
+13
-2
ServerPropertiesTests.java
...amework/boot/autoconfigure/web/ServerPropertiesTests.java
+8
-0
appendix-application-properties.adoc
...cs/src/main/asciidoc/appendix-application-properties.adoc
+2
-1
No files found.
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/ServerProperties.java
View file @
1ed90df6
...
@@ -207,9 +207,11 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
...
@@ -207,9 +207,11 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
+
"169\\.254\\.\\d{1,3}\\.\\d{1,3}|"
// 169.254/16
+
"169\\.254\\.\\d{1,3}\\.\\d{1,3}|"
// 169.254/16
+
"127\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"
;
// 127/8
+
"127\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"
;
// 127/8
private
String
protocolHeader
=
"x-forwarded-proto"
;
private
String
protocolHeader
;
private
String
remoteIpHeader
=
"x-forwarded-for"
;
private
String
portHeader
;
private
String
remoteIpHeader
;
private
File
basedir
;
private
File
basedir
;
...
@@ -285,6 +287,14 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
...
@@ -285,6 +287,14 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
this
.
protocolHeader
=
protocolHeader
;
this
.
protocolHeader
=
protocolHeader
;
}
}
public
String
getPortHeader
()
{
return
this
.
portHeader
;
}
public
void
setPortHeader
(
String
portHeader
)
{
this
.
portHeader
=
portHeader
;
}
public
String
getRemoteIpHeader
()
{
public
String
getRemoteIpHeader
()
{
return
this
.
remoteIpHeader
;
return
this
.
remoteIpHeader
;
}
}
...
@@ -321,6 +331,7 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
...
@@ -321,6 +331,7 @@ public class ServerProperties implements EmbeddedServletContainerCustomizer {
valve
.
setRemoteIpHeader
(
remoteIpHeader
);
valve
.
setRemoteIpHeader
(
remoteIpHeader
);
valve
.
setProtocolHeader
(
protocolHeader
);
valve
.
setProtocolHeader
(
protocolHeader
);
valve
.
setInternalProxies
(
getInternalProxies
());
valve
.
setInternalProxies
(
getInternalProxies
());
valve
.
setPortHeader
(
getPortHeader
());
factory
.
addContextValves
(
valve
);
factory
.
addContextValves
(
valve
);
}
}
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/ServerPropertiesTests.java
View file @
1ed90df6
...
@@ -147,6 +147,12 @@ public class ServerPropertiesTests {
...
@@ -147,6 +147,12 @@ public class ServerPropertiesTests {
@Test
@Test
public
void
defaultTomcatRemoteIpValve
()
throws
Exception
{
public
void
defaultTomcatRemoteIpValve
()
throws
Exception
{
Map
<
String
,
String
>
map
=
new
HashMap
<
String
,
String
>();
// Since 1.1.7 you need to specify at least the protocol and ip properties
map
.
put
(
"server.tomcat.protocol_header"
,
"x-forwarded-proto"
);
map
.
put
(
"server.tomcat.remote_ip_header"
,
"x-forwarded-for"
);
bindProperties
(
map
);
TomcatEmbeddedServletContainerFactory
container
=
new
TomcatEmbeddedServletContainerFactory
();
TomcatEmbeddedServletContainerFactory
container
=
new
TomcatEmbeddedServletContainerFactory
();
this
.
properties
.
customize
(
container
);
this
.
properties
.
customize
(
container
);
...
@@ -171,6 +177,7 @@ public class ServerPropertiesTests {
...
@@ -171,6 +177,7 @@ public class ServerPropertiesTests {
map
.
put
(
"server.tomcat.remote_ip_header"
,
"x-my-remote-ip-header"
);
map
.
put
(
"server.tomcat.remote_ip_header"
,
"x-my-remote-ip-header"
);
map
.
put
(
"server.tomcat.protocol_header"
,
"x-my-protocol-header"
);
map
.
put
(
"server.tomcat.protocol_header"
,
"x-my-protocol-header"
);
map
.
put
(
"server.tomcat.internal_proxies"
,
"192.168.0.1"
);
map
.
put
(
"server.tomcat.internal_proxies"
,
"192.168.0.1"
);
map
.
put
(
"server.tomcat.port-header"
,
"x-my-forward-port"
);
bindProperties
(
map
);
bindProperties
(
map
);
TomcatEmbeddedServletContainerFactory
container
=
new
TomcatEmbeddedServletContainerFactory
();
TomcatEmbeddedServletContainerFactory
container
=
new
TomcatEmbeddedServletContainerFactory
();
...
@@ -182,6 +189,7 @@ public class ServerPropertiesTests {
...
@@ -182,6 +189,7 @@ public class ServerPropertiesTests {
RemoteIpValve
remoteIpValve
=
(
RemoteIpValve
)
valve
;
RemoteIpValve
remoteIpValve
=
(
RemoteIpValve
)
valve
;
assertEquals
(
"x-my-protocol-header"
,
remoteIpValve
.
getProtocolHeader
());
assertEquals
(
"x-my-protocol-header"
,
remoteIpValve
.
getProtocolHeader
());
assertEquals
(
"x-my-remote-ip-header"
,
remoteIpValve
.
getRemoteIpHeader
());
assertEquals
(
"x-my-remote-ip-header"
,
remoteIpValve
.
getRemoteIpHeader
());
assertEquals
(
"x-my-forward-port"
,
remoteIpValve
.
getPortHeader
());
assertEquals
(
"192.168.0.1"
,
remoteIpValve
.
getInternalProxies
());
assertEquals
(
"192.168.0.1"
,
remoteIpValve
.
getInternalProxies
());
}
}
...
...
spring-boot-docs/src/main/asciidoc/appendix-application-properties.adoc
View file @
1ed90df6
...
@@ -74,7 +74,8 @@ content into your application; rather pick only the properties that you need.
...
@@ -74,7 +74,8 @@ content into your application; rather pick only the properties that you need.
192\.168\.\d{1,3}\.\d{1,3}|\
192\.168\.\d{1,3}\.\d{1,3}|\
169\.254\.\d{1,3}\.\d{1,3}|\
169\.254\.\d{1,3}\.\d{1,3}|\
127\.\d{1,3}\.\d{1,3}\.\d{1,3} # regular expression matching trusted IP addresses
127\.\d{1,3}\.\d{1,3}\.\d{1,3} # regular expression matching trusted IP addresses
server.tomcat.protocol-header=x-forwarded-proto # ssl forward headers
server.tomcat.protocol-header=x-forwarded-proto # front end proxy forward header
server.tomcat.port-header= # front end proxy port header
server.tomcat.remote-ip-header=x-forwarded-for
server.tomcat.remote-ip-header=x-forwarded-for
server.tomcat.basedir=/tmp # base dir (usually not needed, defaults to tmp)
server.tomcat.basedir=/tmp # base dir (usually not needed, defaults to tmp)
server.tomcat.background-processor-delay=30; # in seconds
server.tomcat.background-processor-delay=30; # in seconds
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment