ALB to map multiple context path on one common port (tomcat)
Currently, we have tomcat based deployments and one Apache server to manage multiple context path on the same port (v-host configuration)
For example,
ProxyPassMatch /test(.) http://127.0.0.1:7077/test$1*
ProxyPassMatch /test2(.) http://127.0.0.1:7077/test2$1*
and so on
Now we are shifting towards ALB of AWS and we want to map all those context paths in ALB as present in Apache configuration file.
We created ALB --> Listener on 80 Port --> Target created with a Necessary Instance with port 7077 --> health check is passed
Listener rule is,
Context path /test --> Forward to Target Group of 7077 port
Context path /test2 --> Forward to Target Group of 7077 port
But while testing it is showing 502 Bad Gateway when we shut down Apache and to test ALB
Any Solutions?
amazon-web-services amazon-elb
add a comment |
Currently, we have tomcat based deployments and one Apache server to manage multiple context path on the same port (v-host configuration)
For example,
ProxyPassMatch /test(.) http://127.0.0.1:7077/test$1*
ProxyPassMatch /test2(.) http://127.0.0.1:7077/test2$1*
and so on
Now we are shifting towards ALB of AWS and we want to map all those context paths in ALB as present in Apache configuration file.
We created ALB --> Listener on 80 Port --> Target created with a Necessary Instance with port 7077 --> health check is passed
Listener rule is,
Context path /test --> Forward to Target Group of 7077 port
Context path /test2 --> Forward to Target Group of 7077 port
But while testing it is showing 502 Bad Gateway when we shut down Apache and to test ALB
Any Solutions?
amazon-web-services amazon-elb
add a comment |
Currently, we have tomcat based deployments and one Apache server to manage multiple context path on the same port (v-host configuration)
For example,
ProxyPassMatch /test(.) http://127.0.0.1:7077/test$1*
ProxyPassMatch /test2(.) http://127.0.0.1:7077/test2$1*
and so on
Now we are shifting towards ALB of AWS and we want to map all those context paths in ALB as present in Apache configuration file.
We created ALB --> Listener on 80 Port --> Target created with a Necessary Instance with port 7077 --> health check is passed
Listener rule is,
Context path /test --> Forward to Target Group of 7077 port
Context path /test2 --> Forward to Target Group of 7077 port
But while testing it is showing 502 Bad Gateway when we shut down Apache and to test ALB
Any Solutions?
amazon-web-services amazon-elb
Currently, we have tomcat based deployments and one Apache server to manage multiple context path on the same port (v-host configuration)
For example,
ProxyPassMatch /test(.) http://127.0.0.1:7077/test$1*
ProxyPassMatch /test2(.) http://127.0.0.1:7077/test2$1*
and so on
Now we are shifting towards ALB of AWS and we want to map all those context paths in ALB as present in Apache configuration file.
We created ALB --> Listener on 80 Port --> Target created with a Necessary Instance with port 7077 --> health check is passed
Listener rule is,
Context path /test --> Forward to Target Group of 7077 port
Context path /test2 --> Forward to Target Group of 7077 port
But while testing it is showing 502 Bad Gateway when we shut down Apache and to test ALB
Any Solutions?
amazon-web-services amazon-elb
amazon-web-services amazon-elb
asked Nov 12 '18 at 14:11
DevendraDevendra
276
276
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The Application Load Balancer cannot rewrite the path going to the target like you can with a typical reverse proxy.
https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions says:
The path pattern is used to route requests but does not alter them. For example, if a rule has a path pattern of /img/*, the rule would forward a request for /img/picture.jpg to the specified target group as a request for /img/picture.jpg.
Tomcat specific:
Perhaps you can have the tomcat app listen on multiple paths with configuration in context.xml
or server.xml
. This question has some suggestions, but it seems if you have multiple contexts, the app will run twice and take twice the memory.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53263939%2falb-to-map-multiple-context-path-on-one-common-port-tomcat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The Application Load Balancer cannot rewrite the path going to the target like you can with a typical reverse proxy.
https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions says:
The path pattern is used to route requests but does not alter them. For example, if a rule has a path pattern of /img/*, the rule would forward a request for /img/picture.jpg to the specified target group as a request for /img/picture.jpg.
Tomcat specific:
Perhaps you can have the tomcat app listen on multiple paths with configuration in context.xml
or server.xml
. This question has some suggestions, but it seems if you have multiple contexts, the app will run twice and take twice the memory.
add a comment |
The Application Load Balancer cannot rewrite the path going to the target like you can with a typical reverse proxy.
https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions says:
The path pattern is used to route requests but does not alter them. For example, if a rule has a path pattern of /img/*, the rule would forward a request for /img/picture.jpg to the specified target group as a request for /img/picture.jpg.
Tomcat specific:
Perhaps you can have the tomcat app listen on multiple paths with configuration in context.xml
or server.xml
. This question has some suggestions, but it seems if you have multiple contexts, the app will run twice and take twice the memory.
add a comment |
The Application Load Balancer cannot rewrite the path going to the target like you can with a typical reverse proxy.
https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions says:
The path pattern is used to route requests but does not alter them. For example, if a rule has a path pattern of /img/*, the rule would forward a request for /img/picture.jpg to the specified target group as a request for /img/picture.jpg.
Tomcat specific:
Perhaps you can have the tomcat app listen on multiple paths with configuration in context.xml
or server.xml
. This question has some suggestions, but it seems if you have multiple contexts, the app will run twice and take twice the memory.
The Application Load Balancer cannot rewrite the path going to the target like you can with a typical reverse proxy.
https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#path-conditions says:
The path pattern is used to route requests but does not alter them. For example, if a rule has a path pattern of /img/*, the rule would forward a request for /img/picture.jpg to the specified target group as a request for /img/picture.jpg.
Tomcat specific:
Perhaps you can have the tomcat app listen on multiple paths with configuration in context.xml
or server.xml
. This question has some suggestions, but it seems if you have multiple contexts, the app will run twice and take twice the memory.
answered Dec 14 '18 at 18:45
Victor RoetmanVictor Roetman
1,2361129
1,2361129
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53263939%2falb-to-map-multiple-context-path-on-one-common-port-tomcat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown