Tổng quan
Lỗi “Connection Lost” là một vấn đề phổ biến khi cập nhật n8n lên phiên bản mới nhất, đặc biệt là khi tự host trên server riêng. Bài viết này sẽ hướng dẫn bạn cách khắc phục lỗi này một cách hiệu quả.
Video hướng dẫn

Xem video hướng dẫn chi tiết để hiểu rõ cách thực hiện từng bước.
Nguyên nhân gây lỗi Connection Lost
1. Cấu hình Reverse Proxy không đúng
- Thiếu cấu hình WebSocket support
- Headers không được thiết lập đúng chuẩn
- Cache settings gây xung đột
2. Biến môi trường không phù hợp
N8N_HOST
không được cấu hình đúngN8N_PORT
không khớp với reverse proxyN8N_PROTOCOL
thiếu hoặc sai
3. Vấn đề về Container
- Container không được restart đúng cách
- Volume mapping bị lỗi
- Network configuration không phù hợp
Cách khắc phục
Bước 1: Kiểm tra Log và Môi trường Container
# Kiểm tra log của n8n container
docker logs n8n-container-name
# Kiểm tra biến môi trường
docker exec n8n-container-name env | grep N8N
Bước 2: Cấu hình Nginx đúng chuẩn
Tạo file cấu hình Nginx cho n8n:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header Origin $scheme://$http_host;
proxy_cache off;
proxy_buffering off;
proxy_read_timeout 300s;
proxy_connect_timeout 75s;
}
}
Bước 3: Cấu hình Docker Compose
version: '3.8'
services:
n8n:
image: n8nio/n8n:latest
restart: unless-stopped
ports:
- "5678:5678"
environment:
- N8N_HOST=your-domain.com
- N8N_PORT=5678
- N8N_PROTOCOL=https
- N8N_EDITOR_BASE_URL=https://your-domain.com
- WEBHOOK_URL=https://your-domain.com
volumes:
- n8n_data:/home/node/.n8n
networks:
- n8n_network
volumes:
n8n_data:
networks:
n8n_network:
driver: bridge
Bước 4: Thiết lập biến môi trường
Tạo file .env
với các biến sau:
N8N_HOST=your-domain.com
N8N_PORT=5678
N8N_PROTOCOL=https
N8N_EDITOR_BASE_URL=https://your-domain.com
WEBHOOK_URL=https://your-domain.com
N8N_SECURE_COOKIE=true
N8N_SESSION_COOKIE_SECURE=true
Các bước thực hiện chi tiết
1. Backup dữ liệu hiện tại
# Backup volume data
docker run --rm -v n8n_data:/data -v $(pwd):/backup alpine tar czf /backup/n8n-backup.tar.gz -C /data .
2. Dừng và xóa container cũ
docker-compose down
docker system prune -f
3. Cập nhật cấu hình
- Cập nhật file
docker-compose.yml
- Cập nhật file cấu hình Nginx
- Cập nhật file
.env
4. Khởi động lại services
# Khởi động n8n
docker-compose up -d
# Reload Nginx
sudo nginx -t
sudo systemctl reload nginx
5. Kiểm tra kết nối
# Kiểm tra container status
docker ps
# Kiểm tra log
docker logs n8n-container-name
# Test kết nối
curl -I https://your-domain.com
Troubleshooting nâng cao
Lỗi WebSocket không hoạt động
location / {
proxy_pass http://localhost:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
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 $scheme;
proxy_cache off;
proxy_buffering off;
proxy_read_timeout 300s;
proxy_connect_timeout 75s;
}
Lỗi SSL/HTTPS
server {
listen 443 ssl http2;
server_name your-domain.com;
ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/private.key;
location / {
proxy_pass http://localhost:5678;
# ... các cấu hình proxy khác
}
}
Lỗi Permission
# Fix quyền cho volume
sudo chown -R 1000:1000 ./n8n_data
Kiểm tra và Monitoring
1. Health Check
#!/bin/bash
# health-check.sh
if curl -f http://localhost:5678/healthz > /dev/null 2>&1; then
echo "n8n is healthy"
exit 0
else
echo "n8n is down"
exit 1
fi
2. Log Monitoring
# Theo dõi log real-time
docker logs -f n8n-container-name
# Lọc log lỗi
docker logs n8n-container-name 2>&1 | grep -i error
3. Performance Monitoring
# Kiểm tra resource usage
docker stats n8n-container-name
# Kiểm tra disk usage
docker system df
Best Practices
1. Backup thường xuyên
# Script backup tự động
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
docker run --rm -v n8n_data:/data -v $(pwd):/backup alpine tar czf /backup/n8n-backup-$DATE.tar.gz -C /data .
2. Update an toàn
# Update từng bước
docker-compose pull
docker-compose up -d --no-deps n8n
3. Monitoring và Alerting
- Sử dụng tools như Uptime Kuma
- Thiết lập alert khi service down
- Monitor disk space và memory usage
Kết luận
Việc fix lỗi “Connection Lost” trong n8n hosting chủ yếu liên quan đến cấu hình reverse proxy và biến môi trường. Với các bước hướng dẫn trên, bạn có thể khắc phục lỗi này một cách hiệu quả và đảm bảo n8n hoạt động ổn định sau mỗi lần cập nhật.
Tài nguyên bổ sung
Hỗ trợ
Nếu bạn gặp khó khăn trong quá trình cập nhật hoặc cần tư vấn thêm, hãy để lại bình luận hoặc liên hệ qua các kênh hỗ trợ.