Pro*_*ton 11 java ubuntu tomcat
我刚刚在 Ubuntu 18.04 上使用 Tomcat 9 设置了一个新的 Java 项目。
但是,当我使用命令启动 Tomcat 服务器时
sudo systemctl restart tomcat
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
在 java.library.path 上找不到允许使用 OpenSSL 的 Apache Tomcat Native 库
我仍然可以弄清楚问题出在哪里。
您需要tomcat-native-1.2.31按照以下步骤从源代码安装:
yum install gcc apr-devel apr-util
Run Code Online (Sandbox Code Playgroud)
/tmp文件夹cd /tmp
wget https://mirror-hk.koddos.net/apache/tomcat/tomcat-connectors/native/1.2.31/source/tomcat-native-1.2.31-src.tar.gz
Run Code Online (Sandbox Code Playgroud)
tar zxvf tomcat-native-1.2.31-src.tar.gz
Run Code Online (Sandbox Code Playgroud)
cd tomcat-native-1.2.31-src/native
./configure --with-apr=/usr/bin/apr-1-config \
--with-java-home=$JAVA_HOME \
--with-ssl=yes \
--prefix=$CATALINA_HOME
Run Code Online (Sandbox Code Playgroud)
make & make install
Run Code Online (Sandbox Code Playgroud)
$CATALINA_HOME/bin/setenv.sh(如有必要,创建文件)并将 tc-native 库的路径添加到 LD_LIBRARY_PATH。LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib
export LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)
它正在发挥作用!
我明白问题出在哪里了。
我已经在文件中设置了SSL/TLS/HTTPS连接协议opt/tomcat/conf/server.xml:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" >
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
<SSLHostConfig>
<Certificate certificateKeyFile="conf/key.key"
certificateFile="conf/cert.crt"
certificateChainFile="conf/chain.crt"
type="RSA" />
</SSLHostConfig>
</Connector>
Run Code Online (Sandbox Code Playgroud)
但是*.war要使用连接的文件没有放在opt/tomcat/webapps目录中。
我是这样解决的:
我只是将*.war文件添加到 tomcat 的目录中opt/tomcat/webapps,然后使用以下命令重新启动 tomcat 服务器:
sudo systemctl restart tomcat
Run Code Online (Sandbox Code Playgroud)
一切都很好。
就这样。
我希望这有帮助