首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅当在jsp中启用时才重定向到SSL。

仅当在jsp中启用时才重定向到SSL。
EN

Stack Overflow用户
提问于 2012-05-27 01:37:50
回答 2查看 446关注 0票数 0

我一直在尝试找到一种方法来轻松判断Java服务器是否从JSP启用了SSL以重定向单个页面。我的理由是,我只想转发到SSL,如果启用了SSL,就可以轻松地在我们的本地开发系统中进行测试,而不必设置证书,然后部署到我们的发布系统,让证书“工作”。

我曾尝试创建一个SslSocketFactory,看看它是否能正常工作而不抛出异常,但这似乎并不像我想的那样工作。然而,我不是特别喜欢这种方法,因为我不得不花时间创建工厂,结果只是把它扔掉了。我真的只是在寻找一个我可以使用的public boolean isSslEnabled()方法调用。

目前我们的默认状态是不使用HTTPS,但在发布系统上,您可以通过HTTPS访问站点。这并不理想,因为用户仍然可以通过HTTP访问该站点,然后所有内容都将以明文形式发送。我也不打算加密整个服务器,如果启用了SSL,我只想加密一个页面。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-27 03:05:09

您的Java代码不应该关心是否启用了SSL。尝试将他的配置仅保留为配置。

如果您已经在web.xml中设置了您的SSL需求,那么您的开发人员可以覆盖本地服务器需求的本地web.xml (例如eclipse)。

如果您关心针对每个生产服务器的SSL,那么最好创建您自己的Certificate Authority并生成您自己的SSL证书。这样,您就可以在预生产和生产环境中部署完全相同的 EAR或WAR。你不会想在每个环境中摆弄部署。

Jboss SSL config

Tomcat SSL config

票数 2
EN

Stack Overflow用户

发布于 2012-05-31 03:51:19

我最终所做的是将所有SSL重定向/强制执行转移到Apache中,而不是在Tomcat中担心它。我在Apache后面运行Tomcat,看起来这是获得强制SSL的最佳解决方案。我使用Apache中的mod_rewrite来执行规则,它看起来工作得很棒。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10768421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档