Tomcat 9.0 HTTPS 启用

本文介绍如何在Tomcat中配置HTTPS服务,包括证书的导入、端口的修改,以及如何将默认的8080端口更改为HTTP标准的80端口和HTTPS的443端口。

拷贝你的证书JKS 或者PFX 到conf文件夹下,JKS和PFX是证书格式,将证书和私钥都报好在内的两种不同格式。

Tomcat均可识别,只需要任意一个即可。

 

编辑server.xml中的如下代码可将https8080端口修改为http默认的80端口,

这是http默认配置,端口为8080,为了方便访问建议修改为80端口

默认代码如下:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="443" />

 

修改后代码如下

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="443" />

配置后保存配置文件并重启Tomcat服务,测试可行

 

通过修改如下代码来启用https并设置端口从8443修改为https默认端口443

默认配置如下,注意是代码是注释状态,修改时一定要删除注释符

    <!--
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>
    -->

修改后代码如下:

修改默认端口443

修改证书路径,注意完整文件名 

添加证书密码    certificateKeystorePassword="123456"

    <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/pfxtojks.jks"
                         certificateKeystorePassword="123456"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>

保存配置文件后重启tomcat服务后测试可行:

<think>我们要修改MyEclipse2024自带的Tomcat9.0以支持HTTPS访问。这涉及到生成自签名证书(或使用已有证书)、配置Tomcat的server.xml文件以启用HTTPS连接器(Connector)等步骤。步骤概述:1.生成密钥库(keystore)文件,其中包含自签名证书(用于开发测试;生产环境应使用由受信任的CA签发的证书)。2.配置Tomcat的server.xml文件,添加或修改一个Connector,指定为HTTPS协议,并配置相关参数,如密钥库路径、密码等。3.重启Tomcat服务器。详细步骤:第一步:生成密钥库我们可以使用Java的keytool工具生成密钥库。打开命令提示符(或终端),执行以下命令:keytool-genkey -alias tomcat -keyalgRSA -keystore keystore.jks-validity365 -keysize2048这个命令会生成一个名为keystore.jks的密钥库文件,有效期为365天,密钥算法为RSA,密钥长度2048位。执行过程中会要求输入密钥库密码、名字与姓氏(这里应输入域名,如localhost)、组织单位等信息。注意:在输入名字与姓氏时,如果是在本地测试,可以输入"localhost";如果是在服务器上,应输入服务器的域名。第二步:配置Tomcat的server.xml在MyEclipse中,找到Tomcat的安装目录(或者MyEclipse自带的Tomcat配置目录),打开conf目录下的server.xml文件。在server.xml中,找到如下注释掉的Connector示例(通常在文件内搜索“SSL”或“HTTPS”可以找到):<!--<Connector port="8443"protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150"SSLEnabled="true"><SSLHostConfig><CertificatecertificateKeystoreFile="conf/keystore.jks"type="RSA"/></SSLHostConfig></Connector>-->或者,Tomcat9.0的配置方式可能如下(更推荐使用):<!--<Connector port="8443"protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150"SSLEnabled="true"><SSLHostConfig><CertificatecertificateKeystoreFile="conf/localhost-rsa.jks"type="RSA"/></SSLHostConfig></Connector>-->我们需要取消注释并修改这个Connector配置,指定我们生成的密钥库文件路径和密码。修改后的配置可能如下(注意根据实际情况调整):<Connectorport="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150" SSLEnabled="true"><SSLHostConfig><Certificate certificateKeystoreFile="conf/keystore.jks"certificateKeystorePassword="changeit"<!--替换为你的密钥库密码 -->type="RSA"/></SSLHostConfig></Connector>注意:-port:HTTPS默认端口是443,但在开发环境中,我们通常使用8443以避免权限问题(1024以下端口需要管理员权限)。- certificateKeystoreFile:指定密钥库文件的路径。这里我们假设将keystore.jks放在Tomcat的conf目录下,因此路径为conf/keystore.jks。请根据实际存放位置修改。-certificateKeystorePassword:密钥库的密码,替换为生成密钥库时设置的密码。第三步:重启Tomcat在MyEclipse中重启Tomcat服务器。测试HTTPS访问:在浏览器中访问:https://localhost:8443/(注意端口号)由于使用的是自签名证书,浏览器会显示安全警告,需要手动确认继续(添加例外或继续前往)。代码实现:实际上,上述步骤主要是配置操作,不涉及编程代码。但为了完整性,我们可以提供生成密钥库的命令和配置文件的修改。注意:在MyEclipse中,可能不需要直接修改Tomcat安装目录下的配置文件,因为MyEclipse可能使用了自己的配置副本。通常,MyEclipse的Tomcat配置位于工作空间或MyEclipse的安装目录中。例如:工作空间\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf\server.xml或者,在Servers视图中,右键单击Tomcat服务器,选择“Open”或“OpenServerConfiguration”,然后找到server.xml。因此,在MyEclipse中修改Tomcat配置的步骤如下:1.在MyEclipse的“Servers”视图中,找到你的Tomcat服务器。2.右键单击该服务器,选择“Open”或“Open ServerConfiguration”(具体名称可能略有不同)。3.打开的配置文件中,找到server.xml并进行上述修改。此外,将生成的keystore.jks文件复制到Tomcat配置目录下的conf文件夹中(即上述server.xml所在的同一目录的conf下)。如果MyEclipse的Servers视图中没有Tomcat服务器,需要先创建服务器实例。由于不涉及编程代码,我们只提供配置步骤。但我们可以写一个简单的Java程序来验证HTTPS连接,不过这通常不是必要的,因为浏览器测试即可。相关问题:根据要求,最后需要提出四个相关问题。因此,回答如下:</think>### 修改 MyEclipse 2024 自带 Tomcat 9.0 启用 HTTPS 访问 以下是完整的配置步骤(无需编程,通过配置文件和命令行操作): #### 步骤 1:生成 SSL 证书密钥库 使用 Java 的 `keytool` 生成自签名证书(测试环境用): ```bash keytool -genkey -alias tomcat -keyalg RSA -keystore tomcat.keystore -validity 365 -keysize 2048 ``` **参数说明**: - `-keystore tomcat.keystore`:生成的密钥库文件名 - `-validity 365`:证书有效期(天) - `-keysize 2048`:密钥长度 - 执行后会提示设置密钥库密码(建议设为 `changeit`)和证书信息(本地测试可全填 `localhost`) #### 步骤 2:将密钥库放入 Tomcat 将生成的 `tomcat.keystore` 文件复制到 Tomcat 的 `conf` 目录: ``` MyEclipse 安装目录/plugins/com.genuitec.eclipse.easie.tomcat.myeclipse_xxx/tomcat/conf ``` #### 步骤 3:修改 `server.xml` 配置 打开 Tomcat 的 `conf/server.xml` 文件,找到以下部分并修改: ```xml <!-- 取消注释并修改此 Connector --> <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" keystoreFile="conf/tomcat.keystore" keystorePass="changeit" <!-- 替换为你的密码 --> clientAuth="false" sslProtocol="TLS" keyAlias="tomcat" /> ``` **关键参数**: - `port`:HTTPS 监听端口(默认 8443) - `keystoreFile`:密钥库相对路径(从 Tomcat 根目录起) - `keystorePass`:密钥库密码 - `keyAlias`:证书别名(与生成时一致) #### 步骤 4:在 MyEclipse 中启用配置 1. 打开 **Servers** 视图 2. 右键 Tomcat 服务器 → **Open Server Configuration** 3.打开的 `server.xml` 中粘贴上述配置 4. 保存文件并重启服务器 #### 步骤 5:验证 HTTPS 访问 浏览器访问测试地址(忽略证书警告): ``` https://localhost:8443/your-webapp ``` #### 生产环境重要提示 1. **正式证书**:向 CA 机构购买域名证书 2. **替换密钥库**: ```bash keytool -importcert -trustcacerts -alias tomcat \ -file your_domain.crt -keystore tomcat.keystore ``` 3. **强制 HTTPS**:在 `web.xml` 添加安全约束 ```xml <security-constraint> <web-resource-collection> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值