在 Tomcat 端口 8443 上启动 https - 需要 APR/本机库,但该库不可用

问题描述 投票:0回答:1

我需要有关 https 的建议。 以下是server.xml文件的配置

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               maxParameterCount="1000"
               redirectPort="8443" />
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               maxParameterCount="1000"
               <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
                  <SSLHostConfig>               
                      <Certificate 
                      certificateKeyFile="conf/privateKey.pem"
                      certificateFile="conf/certificateCA.crt"
                      certificateChainFile="conf/certificate.crt"
                      type="RSA" />
                  </SSLHostConfig>

但是,此配置不会在端口 8443 上运行 mi 服务器。 没有侦听端口 8443。 它仅适用于端口 8080。

Tomcat 日志中显示以下消息:

15-Jul-2024 13:53:17.390 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"] 15-Jul-2024 13:53:17.406 SEVERE [main] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to initialize component [Connector[org.apache.coyote.http11.Http11AprProtocol-8443]] org.apache.catalina.LifecycleException: The configured protocol [org.apache.coyote.http11.Http11AprProtocol] requires the APR/native library which is not available at org.apache.catalina.connector.Connector.initInternal

我该如何解决这个问题?

tomcat https
1个回答
0
投票

TC9和Windows上的修复是按照与此安装APR。

在此处下载 Windows 版 TCL 压缩包。

解压它。

tomcat-native-1.3.0-openssl-3.0.13-win32-bin.zip\bin\x64\tcnative-1.dll

处的文件复制到Tomcat使用的java bin文件夹中,即
%JRE_HOME%/bin
。如果您找不到 java bin 位置,也可以将其放入 
C:\Windows\System32

启动Tomcat。您应该在日志中看到以下内容,并且 HTTPS 在端口 8443 上提供服务。

OpenSSL successfully initialized
    
© www.soinside.com 2019 - 2024. All rights reserved.