首页 > 解决方案 > Nginx:nodejs堆栈的内部错误500

问题描述

所以,我使用 nginx nodejs 堆栈让 mailgun 接收入站转发消息,并将消息完美地传递给我的 api。

但是它给来自 nginx 的 mailgun 日志提供了错误 500,我无法从节点 js 发送 response.status(200)。

这是 nginx 错误日志,只是循环。

[info] 16904#16904: *87 SSL_do_handshake() failed (SSL: error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac) while SSL handshaking, client: from.mailgun
[info] 16904#16904: *88 client closed connection while waiting for request, client: 96.126.100.87 [warn] 24803#24803: *1 a client request body is buffered to a temporary file /var/lib/nginx/body/0000000001, client: from.mailgun
[error] 24803#24803: *1 upstream prematurely closed connection while reading response header from upstream, client: from.mailgun
[info] 24803#24803: *1 SSL_write() failed (SSL:) (104: Connection reset by peer) while sending to client, client: from.mailgun

nodejs没有给出任何错误日志,我检查了很多次。

这是我的 ssl nginx 配置,/etc/nginx/nginx.conf

##
# SSL Settings
##

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;

这是来自我的服务器块,

listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/my.domain/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/my.domain/privkey.pem; # managed by Certbot
# include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot

ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;

ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;

add_header Strict-Transport-Security max-age=15768000;

ssl_stapling on;
ssl_stapling_verify on;

谢谢。

标签: node.jsnginx

解决方案


推荐阅读