Tomcat部署多域名ssl证书

简介: Tomcat部署多域名ssl证书

Tomcat部署多域名ssl证书
转载来自:http://blog.51cto.com/zhanx/2287657
学习参考

部署步骤:

1、搭建Tomcat环境。

2、申请域名证书。

3、部署域名的http访问。

4、部署域名的https访问。

5、强制使http跳转至https。

具体操作如下:

1、搭建tomact环境。

  这里不做赘述,搭建可以所搜其他网络资源。(我这里的环境是Windows2012系统搭建的Tomcat环境)

2、申请域名证书。

  域名证书这里不在说明,(可以参考“Apache配置https证书并跳转”)

3、部署域名的http访问。

    部署好Tomcat后,找到对应目录下的conf文件找到server.xml文件修改对应的配置。

   找到Host添加域名绑定配置 

image

image

配置如下:

  <Host name="域名"  appBase="webapps"
        unpackWARs="true" autoDeploy="true">
    <Context path="" docBase="网站文件路径"/>
  </Host>
  <Host name="域名"  appBase="webapps"
        unpackWARs="true" autoDeploy="true">
    <Context path="" docBase="网站文件路径"/>
  </Host>

测试域名访问成功后,进行下一步测试。

4、配置域名https访问。

  现将域名的ssl证书放到Tomcat中的conf文件中。

  在server.xml文件中找到ssl配置中做如下配置修改:

image

**

<Certificate certificateKeystoreFile="conf/证书路径以及名称" certificateKeystorePassword="证书密码" type="RSA"/>   


<Certificate certificateKeystoreFile="conf/证书路径以及名称" certificateKeystorePassword="证书密码" type="RSA"/>   


**

5、强制使http跳转至https

 到conf目录下的web.xml。在</welcome-file-list>后面,</web-app>,也就是倒数第二段里,加上这样一段

<!-- Authorization setting for SSL -->
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<!-- Authorization setting for SSL -->
<web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>

再让非ssl的connector跳转到ssl的connector去。所以还需要前往server.xml进行配置:

connectionTimeout="20000"
redirectPort="443" />

访问http域名自动跳转至https。

image

测试过程中遇到的坑:

1、配置多域名ssl证书时,指有一个域名访问生效,另外一个域名的证书为不安全证书。

 经多方测试Tomcat的8.5 jdk版本1.8.0 配置多域名多证书访问成功。

  使用Tomcat的9以上的版本不能成功,建议大家多测试。有好方案,配置可以留言
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
21天前
|
XML Java 应用服务中间件
Tomcat_servlet部署、编译、配置、打包
Tomcat_servlet部署、编译、配置、打包
29 0
|
6天前
|
网络协议 应用服务中间件 网络安全
申请并部署免费的 SSL/TLS 证书
本文介绍了如何免费获取和部署 SSL/TLS 证书,主要针对囊中羞涩的用户。方法包括:云服务平台的限量提供、使用 Cloudflare 等网络服务商以及直接向免费证书颁发机构(如 Let’s Encrypt 和 ZeroSSL)申请。文章重点讲述了通过自动化脚本 acme.sh 与 Let’s Encrypt 配合申请和部署证书的步骤,包括设置默认 CA、安装 acme.sh、使用 http 模式验证和部署到 nginx 服务器。此外,还提到了配置 nginx.conf 文件以启用 SSL。
|
12天前
|
Java 应用服务中间件 Apache
Tomcat的基本使用,如何用Maven创建Web项目、开发完成部署的Web项目
Tomcat的基本使用,如何用Maven创建Web项目、开发完成部署的Web项目
29 1
|
21天前
|
网络协议
hexo博客6:自定义域名 购买、配置、更新部署
hexo博客6:自定义域名 购买、配置、更新部署
29 3
|
21天前
|
应用服务中间件
jeecgboot开发环境服务启动刷新没问题,部署到tomcat,F5刷新或者浏览器刷新,会出现404
jeecgboot开发环境服务启动刷新没问题,部署到tomcat,F5刷新或者浏览器刷新,会出现404
12 0
|
21天前
|
安全 Linux 网络安全
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
|
21天前
|
存储 Java 应用服务中间件
Springboot项目打war包部署到外置tomcat容器【详解版】
该文介绍了将Spring Boot应用改为war包并在外部Tomcat中部署的步骤:1) 修改pom.xml打包方式为war;2) 排除内置Tomcat依赖;3) 创建`ServletInitializer`类继承`SpringBootServletInitializer`;4) build部分需指定`finalName`;5) 使用`mvn clean package`打包,将war包放入外部Tomcat的webapps目录,通过startup脚本启动Tomcat并访问应用。注意,应用访问路径和静态资源引用需包含war包名。
|
21天前
|
弹性计算 安全 Java
阿里云服务器配置、(xshell)远程连接、搭建环境、设置安全组、域名备案、申请ssl证书
以下是内容的摘要: 在阿里云购买服务器并进行基本配置的步骤如下: 1. **准备工作**: - 注册阿里云账号:访问阿里云官网并注册新账号,输入用户名、手机号和验证码。 - 实名认证:在个人中心进行实名认证,建议选择企业实名,因为个人实名可能无法索取企业发票。
|
21天前
|
Java 应用服务中间件 Linux
在阿里云服务器上部署Tomcat详细图文详解
本文介绍了在阿里云服务器上安装和配置JDK和Tomcat的步骤。首先,需要注册阿里云账号并进行实名认证,然后购买并设置服务器。接着,通过File Zilla连接服务器,创建Java和Tomcat的安装目录,并将JDK和Tomcat的tar.gz文件上传到服务器,解压并重命名。之后,配置JDK的环境变量,将catalina.sh复制到/etc/init.d/目录下,并修改相关配置。最后,启动Tomcat并配置安全组规则,确保可以通过公网访问。
|
21天前
|
Web App开发 Java 应用服务中间件
【Java Web】在 IDEA 中部署 Tomcat
【Java Web】在 IDEA 中部署 Tomcat