标题tomcat做web服务器,已经知道ip+端口访问了,真正开发中需要的是域名访问,甚至是https访问协议。
准备工作 :tomcat,nginx,SSL证书;
下载我们需要的tomcat版本


并解压,创建一个cert文件夹把解压文件放入;



|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/> <Connector port="443" URIEncoding="UTF-8" useBodyEncodingForURI="true" protocol="HTTP/1.1" SSLEnabled="true" scheme="https" secure="true" keystoreFile="cert/7354355_adv.ss.com.pfx" //刚才上传的/证书 keystoreType="PKCS12" keystorePass="M83445" //刚才pfx-password.txt 里面内容 clientAuth="false" ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" SSLProtocol="TLSv1+TLSv1.1+TLSv1.2" SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4"/> |

最后启动tomcat,即可通过 https:域名访问到tomcat,这里已经可以通过域名访问了,但是在实现工作中,我们不可能一台服务器只配置一个tomcat,而是配置多个tomcat。
我们可以用nginx做分发,nginx也可以配置https,我们上面已经配置好了tomcat,就没必要去配置nginx的https了,直接nginx 分发过去就好了
tomcat/conf/service.xml

修改为8616,修改成功后,保存,重启tomcat;
添加8616端口
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#####adv入口####### upstream tomcat-8616{ server localhost:8616; }
server { listen 80; server_name adv.ss.com; location / { proxy_pass http://tomcat-8616; //访问静态资源的配置 proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; }
location ~ .*\.(js|css)$ { proxy_pass http://tomcat-8616; }
location ~ .*\.(gif|jpg|jpeg|jpg|bmp|swf)$ { proxy_pass http://tomcat-8616; } } |
启动nginx 即可; 这样访问流程就是,域名–>nginx分发—>tomcat解析协议生活https访问—>渲染返回客户端!