【发布时间】:2021-02-08 01:49:16
【问题描述】:
24 小时后出现“错误 503 服务不可用”错误。我正在使用 varnish-6.5.1 与最新的 nginx serwer 进行全页缓存。 Magento 版本是 2.3.4。我正在使用 SSL 证书,Magento 处于开发者模式。 我的清漆配置如下所示:
sudo systemctl edit --full varnish
[Unit]
Description=Varnish Cache, a high-performance HTTP accelerator
After=network-online.target nss-lookup.target
[Service]
Type=forking
KillMode=process
# Maximum number of open files (for ulimit -n)
LimitNOFILE=131072
# Locked shared memory - should suffice to lock the shared memory log
# (varnishd -l argument)
# Default log size is 80MB vsl + 1M vsm + header -> 82MB
# unit is bytes
LimitMEMLOCK=85983232
# Enable this to avoid "fork failed" on reload.
TasksMax=infinity
# Maximum size of the corefile.
LimitCORE=infinity
ExecStart=/usr/sbin/varnishd \
-a :6081 \
-a 127.0.0.1:8443,PROXY \
-p feature=+http2 \
-f /etc/varnish/default.vcl \
-s malloc,3G \
-p pipe_timeout=600 \
-p http_resp_hdr_len=65536 \
-p http_resp_size=98304
ExecReload=/usr/sbin/varnishreload
[Install]
WantedBy=multi-user.target
我的 nginx 配置如下所示:
upstream fastcgi_backend {
server unix:/run/php/php7.3-fpm.sock;
}
server {
listen 80;
listen [::]:80;
server_name 127.0.0.0.1 mysite.pl www.mysite.pl;
return 301 https://mysite.pl$request_uri;
}
server {
listen 443 ssl http2;
server_name 185.243.53.221 127.0.0.1 mysite.pl www.mysite.pl;
access_log /var/log/nginx/www.mysite.pl.log;
error_log /var/log/nginx/www.mysite.pl-error.log;
ssl_certificate_key /etc/nginx/ssl/www.mysite.pl.key;
ssl_certificate /etc/nginx/ssl/www.mysite.pl.pem;
ssl_protocols TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SH$
ssl_prefer_server_ciphers off;
add_header X-Frame-Options "SAMEORIGIN";
add_header Strict-Transport-Security max-age=31536000;
keepalive_timeout 600s;
location / {
proxy_pass http://127.0.0.1:6081;
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 https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;
}
}
server {
listen 8080;
server_name 127.0.0.1 mysite.pl www.mysite.pl;
set $MAGE_ROOT /var/www/magento2;
include /var/www/magento2/nginx.conf.sample;
}
如何检查导致错误的原因?
【问题讨论】:
-
使用
varnishlog和troubleshooting steps 并在发生错误时发布相关的varnish 日志。