在同一基础架构上通过ssl使tomcat与nodejs通信

时间:2019-05-19 07:38:39

标签: node.js ssl tomcat

我在Ovh租了一个虚拟专用服务器,在该服务器上,前端运行一个nodejs实例,后端和mysql运行一个tomcat 9实例。

我在letEncrypt上获得了SSL证书,并将它们存储在服务器上,并设置了nodeJs来使用它们。我将http连接重定向到https。

当我浏览网站页面时,nodeJs可以通过ssl正确显示它们,但是当我进入tomcat应该接管nodeJs接收数据的登录页面时,我在Google的网络控制台中得到以下输出。

>

SSL_ERROR_RX_RECORD_TOO_LONG

NodeJs使用以下URL向tomcat发送请求: https://www.mysite.fr:8080/myApp/

我对服务器管理和SSL知识不多,所以我想知道哪种方法对我来说是最好的解决方案。

考虑到tomcat只应接收来自VPS内部的请求,我是否必须设置tomcat来侦听https?如果没有,我该如何设置?如果是,我可以使用与NodeJ所使用的证书相同的证书吗?

节点正在监听端口443上的https,tomcat是否应该在同一端口上监听https?

请告诉我正确的(最佳)方法...

编辑

我在https://www.mulesoft.com/tcat/tomcat-ssl上发现了一个论点 指出以下内容。

在遇到启动和运行SSL的麻烦之前,确定您是否实际上应该使用此配置可​​能是一个好主意。您需要使用Tomcat处理SSL连接的最常见原因是将Tomcat作为独立的Web服务器运行。

  

换句话说,如果您要在Tomcat上安装Web服务器并使用   在大多数情况下,它仅作为应用程序服务器或Tomcat servlet容器   在这种情况下,您应该让网络服务器充当所有SSL的代理   请求。

     

为什么?因为所有解密,加密和握手都不是   免费-实际上,它不仅是“不免费”,而且还占用大量CPU,   并且大大降低了传输速度。其他   的话,如果您已经在使用网络服务器来提供静态广告   内容,最好让它处理所有内容,以释放您的内容   Tomcat服务器专注于其特长-快速生成动态   内容,并允许其将数据作为   尽快以明文格式。

我的tomcat实例显然只是nodeJs前面将在其中请求信息的应用程序容器。

如何使它充当所有SSL的代理 请求?

0 个答案:

没有答案