n8n'de kurduğunuz iş akışı her sabah on ürün sayfasını açıp fiyatları bir tabloya yazıyor. İlk hafta sorun çıkmıyor. Sonra liste iki yüz ürüne çıkıyor, akış sunucunuzun tek IP adresinden art arda istek göndermeye başlıyor ve HTTP Request düğümü kırmızıya dönüyor: önce 429, ardından 403. Ya da durum tam tersi: hedef API yalnızca belirli bir ülkeden gelen isteğe doğru fiyatı gösteriyor, n8n sunucunuz ise başka bir ülkede duruyor. İki durumda da aranan ayar aynı: n8n'in dışarı giden isteklerini bir proxy üzerinden geçirmek.
Bu yazıda n8n'de proxy'nin tanımlandığı iki yeri anlatıyoruz: HTTP Request düğümündeki Proxy seçeneği ve self-hosted kurulumdaki ortam değişkenleri. Kimlik bilgisinin adrese nasıl yazıldığını, hangi ayarın hangisini ezdiğini, n8n Cloud ile kendi sunucunuz arasındaki farkı ve sık görülen hataları sırayla ele alıyoruz. "n8n proxy" diye arayanların bir kısmının aslında aradığı ters proxy (reverse proxy) konusunu da ayırıyoruz. Örnek akış, alıştırma için yayınlanmış bir sitede fiyat izliyor.
n8n nedir, scraping'de nereye oturur?
n8n, kutucukları (düğüm, İngilizce "node") çizgilerle birbirine bağlayarak iş akışı kurduğunuz bir otomasyon aracıdır. Bir tetikleyici düğüm akışı başlatır (zamanlayıcı, webhook, form), ardından gelen düğümler veriyi alır, dönüştürür ve bir yere yazar. Aracı n8n'in kendi bulutunda (n8n Cloud) kullanabilir ya da kendi sunucunuza kurabilirsiniz (self-hosted). Bu ayrım proxy konusunda belirleyicidir.
Scraping tarafında işi iki düğüm görür. HTTP Request düğümü bir adrese istek atıp yanıtı alır; HTML düğümü yanıtın içinden CSS seçicileriyle istediğiniz alanları çıkarır. Bu ikili, içeriği sunucudan hazır gelen sayfalarda ve JSON dönen API'lerde iyi çalışır. İçeriği tarayıcıda JavaScript ile oluşan sayfalarda HTTP Request yalnızca boş bir iskelet görür; farkı Statik ve Dinamik Sayfalar yazımızda anlattık. Seçici yazımı için CSS Seçici ve XPath yazımıza bakabilirsiniz.
n8n'in güçlü olduğu yer, çekilen veriyle sonrasında yapılanlardır: tabloya yazmak, eski değerle karşılaştırmak, değişiklikte bildirim göndermek. Binlerce sayfalık bir tarama için doğru araç değildir; o ölçekte Scrapy gibi bir çatı ya da bir veri kazıma altyapısı gerekir. Hangi yöntemin ne zaman yettiğini Web Sitesinden Veri Çekme yazımızda karşılaştırdık.
"n8n proxy" iki ayrı konudur: hangisini arıyorsunuz?
Arama önerilerinde "n8n proxy" sorgusunun yanına proxy hops, nginx ve reverse sözcükleri de gelir. Bunlar bu yazının konusu olan ayarla ilgili değildir:
| İleri proxy (forward proxy) | Ters proxy (reverse proxy) | |
|---|---|---|
| Trafiğin yönü | n8n'den dışarı giden istekler | Dışarıdan n8n'e gelen istekler |
| Ne işe yarar | İsteğin çıktığı IP adresini ve ülkeyi belirler | n8n'i alan adı ve HTTPS ile yayına açar |
| Tipik araç | Proxy sağlayıcısının uç noktası | nginx, Caddy, Traefik |
| n8n'deki ayar | HTTP Request → Proxy, HTTP_PROXY, HTTPS_PROXY | N8N_PROXY_HOPS, webhook adresi değişkeni |
| Belirtisi | 407, ECONNREFUSED, hedef sitede 403 / 429 | Webhook adresinin localhost görünmesi, yanlış istemci IP'si |
n8n'i nginx arkasında çalıştırıyorsanız n8n dokümanının ters proxy arkasında webhook adresi yapılandırmasını anlatan sayfası iki şey ister: N8N_PROXY_HOPS değişkenini 1 yapmak (varsayılanı 0'dır ve n8n'in önünde kaç ters proxy olduğunu söyler) ve zincirdeki son proxy'nin X-Forwarded-For, X-Forwarded-Host, X-Forwarded-Proto başlıklarını iletmesi. Bu ayarlar dışarı giden isteklerinizi hiçbir şekilde etkilemez. İki kavramın farkını ve nginx örneğini Forward Proxy ve Reverse Proxy Arasındaki Fark yazımızda bulabilirsiniz. Yazının geri kalanı ileri proxy ile ilgilidir.
HTTP Request düğümünde proxy nasıl tanımlanır?
Ayar düğümün ana alanlarında değil, en alttaki Options bölümündedir; ilk bakışta görünmemesinin nedeni budur.
- İş akışınızda HTTP Request düğümünü açın, Method ve URL alanlarını doldurun.
- Parametrelerin en altındaki Options bölümünde Add option düğmesine basın.
- Listeden Proxy seçeneğini ekleyin.
- Açılan alana proxy adresini şema ile birlikte yazın:
http://user:pass@pr.proxynet.io:8000 - Düğümü Execute step ile tek başına çalıştırın ve çıktıyı kontrol edin.
Alanın yer tutucu metni e.g. http://myproxy:3128 biçimindedir; yani n8n burada tam bir URL bekler. Bu yazı için yerelde kurduğumuz güncel sürümde şemasız yazılan adres (user:pass@pr.proxynet.io:8000) hata vermedi, istek proxy'ye hiç uğramadan doğrudan çıktı. socks5:// ile başlayan adreste de sonuç aynıydı: alan HTTP proxy içindir. HTTP Request düğümünün dokümanı bu seçeneğin HTTP_PROXY, HTTPS_PROXY ve ALL_PROXY ile yapılmış genel ayarın önüne geçtiğini açıkça yazar. Sunucunuzda kurumsal bir proxy tanımlıyken tek bir düğümü farklı bir uç noktadan çıkarabilirsiniz.
Kullanıcı adı ve şifre nereye yazılır?
Düğümde proxy için ayrı bir kullanıcı adı ya da şifre alanı yoktur. Kimlik bilgisi adresin içine, kullanıcı:şifre@ biçiminde yazılır. Düğümün Authentication bölümü proxy'ye değil hedef siteye gider; proxy şifresini oraya yazmak 407 hatasını çözmez.
Şifrenizde @, :, / ya da # gibi karakterler varsa adres yanlış yerden bölünür. Bu karakterleri yüzde kodlamasıyla yazın: @ yerine %40, : yerine %3A. Yerel denememizde pa@ss:1 şifresi pa%40ss%3A1 biçiminde yazıldığında proxy'de doğru çözüldü. İki kimlik doğrulama yönteminin ayrıntısı Proxy Kimlik Doğrulama: User:Pass ve IP Whitelist yazımızda.
Bir de güvenlik notu: Proxy alanı düz metindir, n8n'in şifreli kimlik bilgisi kasasına (Credentials) girmez. Akışı JSON olarak dışa aktarıp paylaştığınızda proxy şifreniz de dosyanın içinde gider; paylaşmadan önce alanı temizleyin.
IP whitelist n8n'de kullanılabilir mi?
Kendi sunucunuzda çalışan ve sabit IP adresi olan bir n8n için evet: sunucunun IP'sini proxy panelinizdeki izinli listeye eklersiniz, adres http://pr.proxynet.io:8000 diye şifresiz yazılır. n8n Cloud'da ise bu yöntem güvenilir değildir. n8n, dokümanındaki Cloud IP adresleri sayfasında çıkış IP'lerinin sabit olmadığını ve haber verilmeden değişebildiğini söyler. Bugün izinli listeye eklediğiniz adres yarın geçersiz kalabilir. Cloud'da kullanıcı adı ve şifreyle bağlanın.
Self-hosted kurulumda ortam değişkenleri nasıl kullanılır?
Her düğüme tek tek proxy yazmak yerine n8n sürecinin tamamına bir proxy tanımlayabilirsiniz. n8n'in dağıtım ortam değişkenleri sayfası dört değişken sayar:
| Değişken | Görevi |
|---|---|
HTTP_PROXY | Düğümlerden çıkan şifresiz HTTP trafiği bu adresten geçer |
HTTPS_PROXY | Düğümlerden çıkan TLS'li (HTTPS) trafik bu adresten geçer |
ALL_PROXY | Daha özel olan iki değişken tanımlı değilse ikisi için de kullanılır |
NO_PROXY | Virgülle ayrılmış, proxy'ye girmeden doğrudan bağlanılacak ana bilgisayar listesi |
Docker Compose ile çalışan bir kurulumda değişkenler servisin environment bölümüne eklenir:
services:
n8n:
image: docker.n8n.io/n8nio/n8n
environment:
- HTTP_PROXY=http://user:pass@pr.proxynet.io:8000
- HTTPS_PROXY=http://user:pass@pr.proxynet.io:8000
- NO_PROXY=localhost,127.0.0.1,postgres,redisHTTPS_PROXY değerinin http:// ile başlaması yazım hatası değildir: değişkenin adı proxy'nin şemasını değil, hangi trafiğin oraya gideceğini söyler. Bu değişkenlerin işletim sisteminde nasıl tanımlandığını wget ile Proxy Kullanımı yazımızda anlattık; burada yalnızca n8n'e özgü üç tuzağa değiniyoruz.
Küçük harfli değişken büyüğünü ezer. Aynı doküman sayfası, n8n'in kullandığı proxy-from-env paketinde http_proxy gibi küçük harfli adların, ikisi birlikte tanımlıysa büyük harfli olanın önüne geçtiğini belirtir. Docker imajınıza ya da sunucunuza bir başkası küçük harfli bir değişken koyduysa sizin HTTP_PROXY değeriniz sessizce yok sayılır. Kapsayıcının içinde env | grep -i proxy ile ikisine birden bakın.
NO_PROXY listesini boş bırakmayın. n8n aynı ağdaki veritabanına, Redis'e ya da şirket içi bir API'ye de HTTP ile konuşuyorsa bu istekler de proxy'ye gider ve büyük olasılıkla orada takılır. İç ana bilgisayar adlarını ve localhost'u listeye ekleyin.
Her düğüm bu değişkenlere uymaz. n8n'in kendi HTTP yardımcısını kullanan düğümler ayarı görür. Kendi istemci kütüphanesini getiren bazı düğümlerde ise değişkenin dikkate alınmadığına dair açık kayıtlar vardır (örneğin n8n deposundaki #19652 numaralı kayıt RSS Read düğümü için 2025'te açılmış, sonradan kapatılmıştır). Kritik bir düğümü yayına almadan önce aşağıdaki doğrulama adımıyla sınayın.
Değişkenler n8n süreci başlarken okunur; değiştirdikten sonra kapsayıcıyı ya da servisi yeniden başlatmanız gerekir.
n8n Cloud ve self-hosted: hangi yol nerede açık?
| n8n Cloud | Self-hosted (Docker, npm) | |
|---|---|---|
| HTTP Request → Proxy seçeneği | Var | Var |
HTTP_PROXY / HTTPS_PROXY | Sunucu ortamı sizde olmadığı için tanımlanamaz | Tanımlanır, bütün süreci etkiler |
| IP whitelist ile proxy | Önerilmez: çıkış IP'leri haber verilmeden değişir | Sabit IP'li sunucuda çalışır |
| Proxy'siz çıkış IP'si | n8n'in bulut altyapısındaki değişken adresler | Sunucunuzun kendi adresi |
Cloud kullanıyorsanız tek yolunuz düğüm seçeneğidir. Self-hosted kurulumda ikisi de açıktır; ortam değişkenini "varsayılan çıkış", düğüm seçeneğini de "bu istek farklı yerden çıksın" diye düşünebilirsiniz.
Örnek iş akışı: bir ürünün fiyatını izlemek
Örneği, scraping alıştırması için yayınlanan books.toscrape.com üzerinde kuruyoruz. Kendi işinizde önce hedef sitenin resmi bir API'si ya da satıcı paneli olup olmadığına bakın; varsa HTML ayrıştırmak yerine onu kullanın. Yoksa sitenin robots.txt dosyasını ve kullanım şartlarını okuyun. robots.txt kurallarının nasıl okunacağı robots.txt Dosyası Nedir yazımızda.
Akış altı düğümden oluşur:
- Schedule Trigger: akışı günde bir kez başlatır. Fiyat takibinde dakikalık tarama nadiren gerekir.
- Ürün listesi: adresleri bir Google Sheets tablosundan ya da Edit Fields düğümünden alın. Her satır bir
urlalanı taşır. - Loop Over Items: listeyi tek tek işler. Batch Size değerini
1bırakın. - HTTP Request:
URLalanına{{ $json.url }}ifadesini yazın, Options altında Proxy'yi tanımlayın, Response seçeneğinde biçimi metin olarak bırakın. - HTML: işlem olarak Extract HTML Content seçin ve çıkarılacak alanları CSS seçicileriyle tanımlayın.
- Wait: birkaç saniye bekleyip döngünün başına döner.
Döngü bittiğinde çıkan veriyi bir tabloya yazar, önceki günün fiyatıyla bir If düğümünde karşılaştırır ve fark varsa bildirim gönderirsiniz.
HTTP Request düğümünün dışa aktarılan akış JSON'undaki hali şöyledir:
{
"parameters": {
"url": "={{ $json.url }}",
"options": {
"proxy": "http://user:pass@pr.proxynet.io:8000",
"timeout": 20000,
"response": {
"response": { "fullResponse": true, "responseFormat": "text" }
}
}
},
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2
}HTML düğümünde bu site için üç satır yeter:
| Key | CSS Selector | Return Value |
|---|---|---|
baslik | h1 | Text |
fiyat | p.price_color | Text |
stok | p.availability | Text |
Options altındaki Trim Values ve Clean Up Text seçeneklerini açın; stok satırındaki satır sonları ve fazla boşluklar böylece temizlenir. Çıktı £51.77 gibi bir metindir; sayıya çevirmek için sonraki düğümde para birimi simgesini atıp ondalık ayırıcıyı düzeltmeniz gerekir.
Ürün eşleştirme, fiyat geçmişi ve eşik uyarısıyla daha kapsamlı bir kurguyu E-Ticarette Rakip Fiyat Takibi yazımızda, işin ürün tarafını da fiyat takibi çözümü sayfamızda anlattık.
Hız sınırı ve yeniden deneme n8n'de nasıl kurulur?
n8n bir listeyi aldığında, siz aksini söylemedikçe bütün öğeler için isteği arka arkaya ve beklemeden gönderir. Proxy kullanmak bu davranışı nazik yapmaz; yalnızca isteklerin çıktığı adresi değiştirir. Hedef sitenin gördüğü yükü sizin sınırlamanız gerekir. n8n dokümanının hız sınırlarıyla çalışma ("Handle rate limits") sayfası üç yerleşik yol gösterir:
- Batching (HTTP Request → Options):
Items per Batchile bir seferde kaç istek gideceğini,Batch Interval (ms)ile partiler arasındaki beklemeyi belirlersiniz. Kod gerektirmeyen en kısa yoldur. - Loop Over Items + Wait: yukarıdaki örnekte kullandığımız kurgu. Her isteğin ardından beklemeyi açıkça görürsünüz ve araya başka düğümler koyabilirsiniz.
- Retry On Fail (düğümün Settings sekmesi): başarısız isteği yeniden dener;
Wait Between Tries (ms)ile denemeler arasındaki süreyi verirsiniz.
Retry On Fail'i her hataya karşı açmak doğru değildir. 429 ve 503 beklemeyle düzelir; 403 ve 407 düzelmez, aynı isteği beş kez göndermek yalnızca gereksiz trafik üretir. Hangi kodda denenip hangisinde durulacağını Scraping'de HTTP Hata Kodları yazımızdaki tabloda topladık; hız sınırının mantığı da 429 Too Many Requests yazımızda. Durum koduna göre dallanmak isterseniz HTTP Request'in Response seçeneğinde Include Response Headers and Status ile Never Error'ı açın, ardından bir If düğümünde statusCode alanına bakın.
Rotasyon için ayrı bir düğüm ya da kod gerekir mi?
Bazı n8n scraping şablonları, Code düğümünde bir proxy listesi tutup her istekte sıradakini seçen JavaScript parçaları içerir. Elinizde tek tek IP adreslerinden oluşan bir liste varsa bu gerekir. Dönen (rotating) bir uç noktada gerekmez: pr.proxynet.io:8000 gibi tek bir adrese bağlanırsınız, her yeni bağlantıda çıkış IP'sini sağlayıcı değiştirir. n8n tarafında Proxy alanına yazdığınız adres hiç değişmez. Mekanizmanın ayrıntısı IP Rotasyonu Nedir ve Nasıl Çalışır? yazımızda, ürün tarafı Rotating Proxy sayfasında.
Tersine, IP'nin hiç değişmemesi gereken işler de vardır. Bir iş ortağının API'si yalnızca izinli listeye eklenmiş adreslerden gelen isteği kabul ediyorsa ve n8n Cloud kullanıyorsanız, değişken Cloud IP'leri yerine ISP Proxy gibi sabit bir adres üzerinden çıkmak sorunu çözer. Bu senaryoyu API için Statik IP yazımızda ele aldık.
AI Agent düğümünde proxy nasıl kullanılır?
n8n'in AI Agent düğümüne HTTP Request'i bir araç (tool) olarak bağlayabilirsiniz; model, gerektiğinde bu aracı çağırıp bir sayfayı ya da API'yi okur. Araç olarak bağlanan HTTP Request de aynı Options bölümünü taşır, dolayısıyla Proxy seçeneği burada da aynı biçimde çalışır. Doküman bu kullanım için bir seçenek daha ekler: Optimize Response, yanıtı modele vermeden önce JSON alanlarını süzer ya da HTML'den yalnızca metni çıkarır ve harcanan token miktarını düşürür.
Ajan kurgusunda iki noktaya dikkat edin. Ajanın gidebileceği adresleri araç tanımında sınırlayın: URL'yi tamamen modele bırakmak yerine sabit bir alan adı ve modelin dolduracağı bir yol parametresi tanımlayın. Dil modeli sağlayıcısına giden istekler ise HTTP Request'ten geçmez; onları proxy arkasına almak için self-hosted kurulumda ortam değişkenleri gerekir ve model düğümünün değişkene uyduğunu ayrıca sınamanız gerekir. Ajanların web'e nasıl çıktığını AI Ajanları Nasıl Çalışır? ve LLM'lere Güvenli Web Erişimi yazılarımızda anlattık. Gerçek bir tarayıcı gerektiren sayfalar için Playwright MCP yazımıza bakın.
Proxy'nin çalıştığı nasıl doğrulanır?
Yanlış yazılmış bir adres hata vermeden yok sayılabildiği için ayarı mutlaka sınayın:
- Boş bir akışa iki HTTP Request düğümü koyun. İkisinin de adresi, isteğin geldiği IP'yi döndüren bir servis olsun (örneğin
https://api.ipify.org?format=json). - Birincisinde Proxy seçeneğini boş bırakın, ikincisinde doldurun.
- İkisini de çalıştırın. Birinci düğüm n8n sunucunuzun (ya da Cloud'un) IP'sini, ikincisi proxy'nin çıkış IP'sini göstermelidir. İki adres aynıysa proxy devrede değildir.
- Ortam değişkeni kullanıyorsanız aynı testi Proxy alanı boş bir düğümle yapın: IP değiştiyse değişken okunuyordur.
Adımların ayrıntısı Proxy Nasıl Test Edilir? yazımızda.
Sık görülen hatalar ve anlamları
| Hata | Nereden gelir | Olası neden | Yapılacak |
|---|---|---|---|
ECONNREFUSED | n8n sunucusu | Proxy portu yanlış ya da güvenlik duvarı çıkışı kapatıyor | Adresi panelden yeniden kopyalayın, o porta çıkış iznini kontrol edin |
407 Proxy Authentication Required | Proxy | Şifre yanlış, özel karakter kodlanmamış ya da whitelist'te IP yok | Kimlik bilgisini adres içinde ve yüzde kodlamasıyla yazın |
400 Bad Request (yalnız HTTPS hedeflerde) | Proxy | İstemci, tünel açmak yerine isteği proxy'ye düz gönderiyor | n8n'i güncelleyin; aşağıdaki nota bakın |
ETIMEDOUT / ECONNRESET | Ağ | Proxy'ye ulaşılamıyor ya da hedef çok yavaş | Options → Timeout değerini yükseltin, daha yakın bir çıkış konumu seçin |
ENOTFOUND | DNS | Proxy ana bilgisayar adı yanlış yazılmış | Adı panelden kopyalayıp yeniden yazın |
Hedeften 403 / 429 | Hedef site | Proxy çalışıyor; sorun hız ya da IP türü | Batching ve Wait ile yavaşlayın, nedeni teşhis edin |
400 satırı n8n'e özgü bir geçmişi anlatır. HTTP Request düğümü arka planda Axios kütüphanesini kullanır ve Axios'un yerleşik proxy desteği, HTTPS hedeflerde CONNECT tüneli açmak yerine isteği proxy'ye doğrudan göndermesiyle bilinir. n8n deposundaki #9169 numaralı kayıt bu davranışın düğümde 400 hatasına yol açtığını belgeler. Kayıt 2024 tarihlidir. Denediğimiz güncel sürümde düğüm, HTTPS hedef için proxy'de CONNECT tüneli açtı ve sayfayı sorunsuz aldı. Eski bir n8n sürümünde HTTP adresler proxy'den geçerken HTTPS adresler 400 veriyorsa ilk adım güncellemektir.
Tarayıcıda "proxy sunucusu yanıt vermiyor" uyarısı görüyorsanız sorun n8n'den bağımsızdır; Proxy Sunucusu Yanıt Vermiyor yazımıza bakın.
Kullanım alanları
- Fiyat ve stok izleme: günde bir çalışan, değişiklikte bildirim gönderen akışlar. Kurgu yukarıdaki örnekle aynıdır; ürün tarafı fiyat takibi sayfamızda.
- Konuma göre değişen içeriğin kontrolü: aynı sayfanın farklı ülkelerden nasıl göründüğünü karşılaştırmak için aynı düğümü farklı ülke çıkışlı proxy'lerle çalıştırmak. Geniş ülke kapsamı için Residential Proxy kullanılır.
- Küçük ölçekli içerik toplama: haber başlıkları, ilan sayıları, herkese açık kataloglar. Ölçek büyüdüğünde web crawler çözümüne geçmek daha doğrudur.
Sık yapılan hatalar
- Proxy şifresini Authentication bölümüne yazmak. O bölüm hedef siteye gider. Proxy kimliği adresin içindedir.
- Şemayı yazmamak.
pr.proxynet.io:8000yerinehttp://pr.proxynet.io:8000yazın; şemasız adres hata vermeden yok sayılabilir. - Proxy ekleyince hız sınırını unutmak. Yüz öğelik bir liste, Batching ya da Wait yoksa yüz isteği aynı anda gönderir.
- Giriş gerektiren ya da kişisel veri içeren sayfaları otomasyona bağlamak. Platform şartlarını ve KVKK'yı çiğneyen bir akışı proxy meşru kılmaz; yasal çerçeveyi Web Scraping Yasal mı? yazımızda özetledik.
Karar rehberi
| İhtiyaç | Öneri |
|---|---|
| n8n Cloud kullanıyorum, tek bir düğüm proxy'den çıksın | HTTP Request → Options → Proxy, kullanıcı adı ve şifreyle |
| Self-hosted n8n'de bütün düğümler proxy'den çıksın | HTTP_PROXY, HTTPS_PROXY, NO_PROXY; ardından düğüm düğüm doğrulama |
| Genel ayar var ama bir düğüm farklı ülkeden çıkmalı | O düğümde Proxy seçeneği; genel ayarı ezer |
| Her istekte farklı IP | Dönen uç nokta; Code düğümüyle rotasyon yazmayın |
| Karşı taraf IP'mi izinli listeye alacak | Sabit IP'li proxy (ISP) ya da sabit IP'li kendi sunucunuz |
| Sayfa JavaScript ile yükleniyor, HTML düğümü boş dönüyor | HTTP Request yetmez; tarayıcı otomasyonu ya da sitenin arka plandaki JSON uç noktası |
Sıkça sorulan sorular
n8n Cloud'da proxy kullanılabilir mi?
Evet, HTTP Request düğümündeki Proxy seçeneği Cloud'da da vardır; ortam değişkenleri ise kullanılamaz. Cloud'un çıkış IP'leri sabit olmadığından proxy'ye IP whitelist ile değil, kullanıcı adı ve şifreyle bağlanın.
N8N_PROXY_HOPS ne işe yarar?
n8n'in önünde kaç tane ters proxy (nginx, Caddy, bulut yük dengeleyici) bulunduğunu söyler; varsayılan değeri 0'dır. Dışarı giden isteklerle ve bu yazıdaki proxy ayarıyla ilgisi yoktur.
Düğümdeki Proxy ayarı mı, ortam değişkeni mi önceliklidir?
Düğümdeki ayar. n8n dokümanı böyle yazar; yerel denememizde de ortam değişkeni kapalı bir porta işaret ederken Proxy seçeneği dolu olan düğüm kendi proxy'sinden çıktı.
Zapier'da da aynı ayar var mı?
Hayır. Zapier'ın Webhooks adımında adres, veri, başlık ve temel kimlik doğrulama alanları bulunur; proxy alanı yoktur. İsteği bir proxy'den geçirmek için araya kendi küçük servisinizi koymanız gerekir: Zapier o servise istek atar, servis de hedefe proxy üzerinden gider.
Proxy şifremi akışın içinde düz metin tutmak zorunda mıyım?
Düğüm seçeneğini kullanıyorsanız evet, alan düz metindir. Self-hosted kurulumda şifreyi akıştan çıkarmanın yolu ortam değişkenleridir: kimlik bilgisi sunucunun yapılandırmasında kalır, akış JSON'una girmez. Sabit IP'li bir sunucunuz varsa IP whitelist de şifreyi tamamen ortadan kaldırır.
HTTP Request ile her siteden veri çekilebilir mi?
Hayır. Düğüm JavaScript çalıştırmaz, bu yüzden içeriği tarayıcıda oluşan sayfalarda aradığınız alan yanıtta bulunmaz. Bot koruması kullanan siteler de proxy'den bağımsız olarak doğrulama sayfası döndürebilir. Böyle bir durumda yapılacak şey korumayı zorlamak değil, sitenin resmi API'sine ya da veri ortaklığı seçeneklerine bakmaktır.
Özetle
n8n'de proxy iki yerde tanımlanır: HTTP Request düğümünün Options bölümündeki Proxy alanı ve self-hosted kurulumdaki HTTP_PROXY, HTTPS_PROXY, NO_PROXY değişkenleri. Kimlik bilgisi adresin içine yazılır, düğüm ayarı genel ayarı ezer, N8N_PROXY_HOPS ise yalnızca ters proxy arkasındaki kurulumları ilgilendirir. Proxy hız sınırının yerini tutmaz: Batching ya da Wait ile yavaşlayın, 429 gördüğünüzde bekleyin, resmi API varsa onu seçin. İş akışlarınıza uygun IP türlerini proxy hizmetlerimiz sayfasında karşılaştırabilirsiniz.




