I’m writing this down because it too me an age to figure out a way of doing this. I have a website which Tomcat is happily serving. Areas of the site require a secure connection so I’m using Spring security to require particular URLs to be accessed over HTTPS. It means that when I access http://example.org:8080/webapp/login, it’ll bump me to https://example.org:8443/webapp/login. Note: Tomcat is setup with the SSL connector and a self signed .keystore see (http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html).
I have two vhosts setup in Apache, one for the http://example.org and one for https://example.org. They are both using mod_proxy to ProxyPass and ProxyPassReverse requests to the appropriate Tomcat URL’s. The problem comes when switching to HTTPS from HTTP and vice versa. Ideally I wanted some sort of ProxyPassReverse declaration in my config for http://example.org what would change HTTP headers (that Spring sets) for https://example.org:8443/webapp into https://example.org. Except ProxyPassReverse doesn’t work like that.
Now, I realise I could simply not use Spring to manage which parts of the site should be accessed over HTTPS and which should not…and just setup Apache to redirect as appropriate. I don’t want to do that though, because that makes the task of adding these restrictions a deploy time task, rather than a development time task. I don’t want to risk someone forgetting to add new restrictions when deploying the webapp and I’d much rather the developer added these restrictions when they were working on the task and really thinking about where and when they are needed.
So, how do I solve the problem so that the app can manage its secure-ness and I can setup Apache once and forget about it? The answer is to ProxyPassReverse onto a “special” URL, which when accessed will redirect to the HTTPS (or HTTP) site. For example, if the HTTP site needed to redirect to the HTTPS site, I’d add rules like so to perform the redirect:
# Proxy a request (from the server) to switch to https onto a special URL "/2https/"
ProxyPassReverse /2https/ https://example.org:8443/webapp/
# When a client requests a URL prefixed with "/2https" map it onto the secure site
RewriteRule ^/2https/(.*)$ https://example.org/$1 [R,L]
…and you’d add something similar to the secure site Apache config. As long as I don’t mount any pages at /2http or /2https I should be ok. Note a couple of things:
- You’ll need “SSLProxyEngine on” and “RewriteEngine on” and obviously the appropriate Apache modules loaded for these commands.
- Because of the redirect between HTTP <-> HTTPS you won’t be able to POST data between them directly (I’m not sure why you’d NEED to though)
- Obviously you’ll need to setup Apache with an SSL certificate…but that is a different story
I should say a special thanks to this random site – from whence the idea actually came from. If anyone has any better ideas on how to do it I’d love to hear them. Please comment below.
20 сервисов чтобы дешево купить голоса в ВК в 2026 году – где быстро и выгодно купить голоса ВК? https://vc.ru/1690166
гидроизоляция подвала битумная gidroizolyacziya-podvala-samara5.ru .
ТОП-25 способов накрутки подписчиков ВКонтакте бесплатно – ТОП-25 сервисов https://vc.ru/1394466
кухни в спб от производителя kuhni-spb-25.ru .
кухни на заказ от производителя kuhni-spb-26.ru .
Winchester Outdoor Club – Educational and well-presented, community involvement is highlighted naturally.
заказать кухню в спб по индивидуальному проекту заказать кухню в спб по индивидуальному проекту .
Ideas Explorer – Practical and informative, solutions are presented in an easy-to-follow format.
Enterprise growth solutions – Strong foundation, the emphasis on partnerships makes sense.
современные кухни на заказ в спб современные кухни на заказ в спб .
кухни под заказ спб kuhni-spb-31.ru .
гидроизоляция подвала рулонная gidroizolyacziya-podvala-samara4.ru .
заказать кухню в спб от производителя недорого kuhni-spb-27.ru .
заказать кухню спб заказать кухню спб .
гидроизоляция подвала жилого дома гидроизоляция подвала жилого дома .
fastdealcenter – Very reliable shopping site, found great items quickly.
bondsolutionshub – Practical guidance given, made enterprise bond planning much smoother.
corporatenetworkhub – Excellent resource for business networking, interface is straightforward.
peopleconnector – Helpful site for engaging with like-minded individuals.
prohub – Reliable platform, simplified forming new business connections.
Daily Creative Builds – Encouraging and clear, content pushes projects forward effectively.
smartworkstrategies – Practical methods, increased my productivity noticeably.
projectnavigator – Clear advice, improved task coordination and efficiency.
futuristichub – Online store is smooth and efficient, browsing through products is simple.
OBDNet repair tools – Clear and trustworthy, practical for routine vehicle maintenance.
customerchoicehub – Shopping process is straightforward, helps find what I need quickly.
заказать кухню в спб от производителя недорого kuhni-spb-26.ru .
reliable online store – Smooth navigation and confidence in purchases made shopping enjoyable.
execution mastery tips – Actionable guidance that made workflow and planning more productive.
кухни в спб от производителя кухни в спб от производителя .
кухни на заказ спб каталог кухни на заказ спб каталог .
кухни на заказ производство спб kuhni-spb-31.ru .
clickandbuyonline – Platform is convenient, making a purchase was quick and easy.
заказать кухню по индивидуальным размерам в спб заказать кухню по индивидуальным размерам в спб .
Learning made friendly – Appealing concept, it looks welcoming rather than overwhelming.
кухни на заказ петербург kuhni-spb-27.ru .
growthnetworksolutions – Recommendations are useful and clear, strengthened professional networks.
insightfulbizportal – Clear, actionable tips that gave me immediate ideas for improvement.
onlinebuyinghub – Digital shopping process was seamless, very flexible and convenient today.
Positive Life Hub – Friendly and motivating, content makes happiness feel realistic and attainable.
buyingtipsportal – Reliable advice, helped me select products without confusion.
onlinebuyingcenter – Platform works well, made transactions fast and convenient.
practicalideasportal – Recommendations are hands-on, improved overall team workflow immediately.
business alliance roadmap – Practical guidance that streamlined partnership planning and execution.
ideabuilder – Very practical suggestions, helped me find new approaches quickly.
The Gardens Community Portal – Peaceful and easy to read, neighborhood information is accessible.
enterprise alliance insights – Helpful perspective on growing strong business networks.
business growth alliances – Clear strategies that helped achieve team goals and foster productive partnerships.
convenientdailyshop – Simple site navigation, made buying everyday items easy and quick.
изготовление кухонь на заказ в санкт петербурге kuhni-spb-26.ru .