Perl 为什么SSL在Starman中失败
在启用SSL之前,我的设置工作正常 这个 工作正常,但这:Perl 为什么SSL在Starman中失败,perl,ssl,starman,Perl,Ssl,Starman,在启用SSL之前,我的设置工作正常 这个 工作正常,但这: starman --enable-ssl --ssl-cert a.crt --ssl-key a.key -p 3001 app.psgi 不-生成此错误: Could not finalize SSL connection with client handle (SSL accept attempt failed error:1407609C:SSL routines:SSL23_GET_CLIENT_HELLO:http req
starman --enable-ssl --ssl-cert a.crt --ssl-key a.key -p 3001 app.psgi
不-生成此错误:
Could not finalize SSL connection with client handle (SSL accept attempt failed error:1407609C:SSL routines:SSL23_GET_CLIENT_HELLO:http request)
在每一个请求上
在AWS的Ubuntu16.04.2 LTS上运行Perl5,版本22,Subversion1
端口似乎已转发正常:
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- anywhere anywhere tcp dpt:https redir ports 3001
2 REDIRECT tcp -- anywhere anywhere tcp dpt:https redir ports 3001
3 REDIRECT tcp -- anywhere anywhere tcp dpt:http-alt redir ports 3001
4 REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 3001
无法使用客户端句柄完成SSL连接(SSL接受尝试失败错误:1407609C:SSL例程:SSL23\u GET\u client\u HELLO:http请求)
这表示客户端已发送HTTP请求,而不是预期的HTTPS请求。请检查客户端使用的所有URL-它们都应该是
https://
,而不是http://
,因为您将服务器设置为只能通过https访问。我有这样的问题,并通过安装解决了它
python certbot apache
来自debian apt回购
但现在我有另一个问题:
SSL_cert_文件/etc/letsencrypt/live/.domain_此处../cert.pem不能使用:在/usr/local/share/perl/5.28.1/IO/Socket/SSL.pm第2375行拒绝许可
dir的chown没有帮助。明白了!是的,这是真的!然而,我现在发现使用https超时了。有什么想法吗?我应该重新问这个问题吗?事实证明,您需要在控制台上的AWS防火墙规则上启用https
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- anywhere anywhere tcp dpt:https redir ports 3001
2 REDIRECT tcp -- anywhere anywhere tcp dpt:https redir ports 3001
3 REDIRECT tcp -- anywhere anywhere tcp dpt:http-alt redir ports 3001
4 REDIRECT tcp -- anywhere anywhere tcp dpt:http redir ports 3001