环境:centos 7.6 java 1.8 tomcat 9
不适合小白
1. java JDK 配置:
下载jdk解压
tar -xzvf jdk-8u341-linux-x64.tar.gz
配置环境变量并使环境变量生效:
vim /etc/profile
在最后加入:
JAVA_HOME=/home/jdk1.8.0_341
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
重载配置:source /etc/profile
Java -versiob 查看版本
查看已显示java版本。
2.tomcat绑定域名:
编辑conf/server.xml host字段
3.部署tomcat证书:
jks格式:
修改conf/server.xml,加上下面这一段。https的默认端口是443
<Connector port=”443″ protocol=”HTTP/1.1″
maxThreads=”150″ SSLEnabled=”true” scheme=”https” secure=”true”
clientAuth=”false”
keystoreFile=”/opt/****/apache-tomcat-8.5.45/conf/www.falaylee.cn.jks”
keystorePass=”*******” />
keystoreFile:密钥库文件的存放位置
keystorePass:秘钥库密码(如果你没有设置私钥,那么就是你下载的证书Tomcat文件夹里另一个文件中的字符串)
pfx格式:
<Connector port=”443″ protocol=”HTTP/1.1″
maxThreads=”1150″ SSLEnabled=”true” scheme=”https” secure=”true”
keystoreFile=”/home/apache-tomcat-9.0.65/conf/falaylee.cn.pfx”
keystorePass=”q4ei2gkh445″
clIEntAuth=”false”
SSLProtocol=”TLSv1+TLSv1.1+TLSv1.2″
ciphers=”TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256″/>
4.访问http时强制跳转到https
1)由于http默认端口是80所以需要配置80端口的跳转
修改tomcat目录下的conf/server.xml
<Connector port=”80″ protocol=”org.apache.coyote.http11.Http11NioProtocol”
redirectPort=”443″
URIEncoding=”utf-8″/>
如果用到了AJP那么也需要修改AJP的跳转配置
<Connector port=”8009″ enableLookups=”false” redirectPort=”443″ protocol=”AJP/1.3″ />
2)单单上面这样配置还是跳转不了的,还需要在文件conf/web.xml中添加如下几行配置
即在</welcome-file-list>后面增加粗体显示部分的几行代码即可
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<login-config>
<!– 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>
我这边是改了hosts文件测试的。