我在DigitalOcean上建立了一个使用HTTPS的快速应用程序。在我的代码中,我有一些使用res.sendFile和res.download的路由。当我通过HTTPS访问这些路由时,该功能未执行(功能主体未触发,并且文件未发送/下载)。但是,当我通过HTTP访问时,将执行功能主体,并发送/下载相应的文件。
Express和nginx都会发生这种情况,因此我认为问题出在HTTPS。
当我尝试使用nginx进行反向代理并通过命令行向路由发送请求时,我得到了该错误:
{ Error: write EPROTO 140735787848576:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:802:
at _errnoException (util.js:992:11)
at WriteWrap.afterWrite [as oncomplete] (net.js:864:14) code: 'EPROTO', errno: 'EPROTO', syscall: 'write' }