n8n Nginx Arkasında Nasıl Stabil Çalışır?

n8n’i Nginx arkasında stabil çalıştırmak için reverse proxy, SSL, webhook URL, timeout ve güvenlik ayarlarında dikkat edilmesi gereken pratik noktalar.

Reklam Alanı

n8n’i üretim ortamında yayınlarken yalnızca servisi ayağa kaldırmak yeterli değildir. Webhook çağrılarının doğru URL ile dönmesi, SSL yönlendirmelerinin bozulmaması, büyük iş akışlarında zaman aşımı yaşanmaması ve editör arayüzünün kesintisiz açılması için Nginx tarafında doğru reverse proxy yaklaşımı gerekir. Bu yapı özellikle Docker, VPS veya kurumsal sunucu ortamlarında n8n’in daha güvenilir çalışmasını sağlar.

n8n için Nginx neden önemlidir?

Nginx, n8n uygulamasının internete güvenli ve kontrollü şekilde açılmasını sağlar. Kullanıcı tarayıcısından gelen istekleri n8n’in çalıştığı dahili porta iletir, HTTPS trafiğini yönetir ve alan adı üzerinden tutarlı erişim sunar. Doğru kurulmamış bir proxy yapısında editör ekranı açılabilir; ancak webhook URL’leri hatalı üretilebilir veya entegrasyonlar dış servislerden cevap alamayabilir.

Bu nedenle n8n Nginx yapılandırması yapılırken yalnızca port yönlendirme değil, header bilgileri, proxy timeout değerleri ve public URL ayarları birlikte değerlendirilmelidir.

Temel reverse proxy ayarları

n8n çoğunlukla 5678 portunda çalışır. Nginx ise 80 ve 443 portlarından gelen trafiği karşılayarak uygulamaya iletir. Aşağıdaki örnek, temel bir HTTPS reverse proxy yaklaşımını gösterir. Alan adı, sertifika yolu ve port bilgileri kendi ortamınıza göre güncellenmelidir.

server {
    listen 443 ssl;
    server_name n8n.example.com;

    ssl_certificate /etc/letsencrypt/live/n8n.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/n8n.example.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:5678;
        proxy_http_version 1.1;

        proxy_set_header Host $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_read_timeout 300;
        proxy_connect_timeout 300;
        proxy_send_timeout 300;
    }
}

Buradaki header ayarları, n8n’in gerçek alan adını ve protokolü doğru algılaması için kritiktir. Özellikle X-Forwarded-Proto eksik olduğunda HTTPS arkasında çalışan sistem kendisini HTTP üzerinden erişiliyormuş gibi değerlendirebilir.

Webhook URL ve environment değişkenleri

n8n’de en sık karşılaşılan sorunlardan biri webhook adreslerinin yanlış oluşmasıdır. Bunun nedeni genellikle uygulamanın dış dünyadaki gerçek adresini bilmemesidir. Bu durumda Nginx doğru çalışsa bile dış servisler callback veya webhook çağrılarında hatayla karşılaşabilir.

Kontrol edilmesi gereken değişkenler

Üretim ortamında aşağıdaki değişkenlerin doğru tanımlanması stabilite açısından önemlidir:

  • N8N_HOST: Alan adınızı belirtir.
  • N8N_PROTOCOL: Genellikle HTTPS olmalıdır.
  • WEBHOOK_URL: Dış servislerin erişeceği tam n8n adresidir.
  • N8N_EDITOR_BASE_URL: Editör arayüzünün doğru URL ile çalışmasına yardımcı olur.

Örneğin n8n adresiniz https://n8n.example.com ise WEBHOOK_URL değerinin de bu adresle uyumlu olması gerekir. Docker kullanılıyorsa bu değişkenler compose dosyasında açık ve tutarlı şekilde tanımlanmalıdır.

Zaman aşımı ve büyük iş akışları

Uzun süren HTTP istekleri, dosya işleme adımları veya yoğun API senaryolarında Nginx varsayılan timeout değerleri yetersiz kalabilir. Kullanıcı arayüzünde işlem tamamlanmadan bağlantı kesiliyor, webhook yanıtı geç dönüyor veya 504 hatası alınıyorsa proxy timeout değerleri artırılmalıdır.

Ancak timeout değerlerini çok yüksek tutmak tek başına çözüm değildir. Ağır iş akışlarında n8n queue mode, worker yapısı ve veritabanı performansı da değerlendirilmelidir. Küçük kurulumlarda tek instance yeterli olabilir; fakat düzenli ve yüksek hacimli otomasyonlarda PostgreSQL, Redis ve worker mimarisi daha sağlıklı bir tercih olur.

SSL, yönlendirme ve güvenlik kontrolleri

HTTP’den HTTPS’ye yönlendirme yapılmalı, ancak bu yönlendirme döngü oluşturmayacak şekilde kurgulanmalıdır. Nginx üzerinde 80 portundan gelen trafiği 443’e almak yeterlidir. Ayrıca n8n editör erişimi herkese açık kalacaksa güçlü kullanıcı doğrulaması, IP kısıtlaması veya ek güvenlik katmanları değerlendirilmelidir.

Kurumsal kullanımlarda n8n’in doğrudan IP üzerinden erişilebilir olmaması önerilir. Uygulama yalnızca Nginx üzerinden yayınlanmalı, dahili port güvenlik duvarı ile dış erişime kapatılmalıdır. Bu yaklaşım hem saldırı yüzeyini azaltır hem de tüm trafiğin tek noktadan izlenmesini kolaylaştırır.

Stabil çalışma için hızlı kontrol listesi

n8n Nginx yapılandırması tamamlandıktan sonra editör ekranının açılması tek başına yeterli kabul edilmemelidir. Webhook test edilmeli, HTTPS sertifikası doğrulanmalı, dış servislerden gelen çağrılar izlenmeli ve Nginx hata günlükleri kontrol edilmelidir.

  • Alan adı n8n sunucusuna doğru yönleniyor mu?
  • SSL sertifikası geçerli ve otomatik yenilenebilir durumda mı?
  • WEBHOOK_URL gerçek public adresle aynı mı?
  • Nginx header ayarları eksiksiz mi?
  • Uzun işlemler için timeout değerleri yeterli mi?
  • 5678 portu dış dünyaya kapalı mı?

Bu kontroller düzenli yapıldığında n8n, Nginx arkasında daha öngörülebilir çalışır; webhook tabanlı otomasyonlar, editör erişimi ve dış servis entegrasyonları aynı alan adı ve güvenli bağlantı üzerinden kararlı şekilde yönetilebilir.

Kategori: Genel
Yazar: Meka
İçerik: 650 kelime
Okuma Süresi: 5 dakika
Zaman: Bugün
Yayım: 18-06-2026
Güncelleme: 18-06-2026