ERR_CONNECTION_REFUSED Ne Demek? Çözümü (Chrome, Windows)

Önemli bilgi

ERR_CONNECTION_REFUSED (Chrome'un -102 hatası), tarayıcınızın sitenin IP adresini bulduğu ancak oradaki makinenin ya da önündeki bir güvenlik duvarının bağlantıyı reddettiği anlamına gelir; genellikle o portta bağlantı kabul eden hiçbir şey yoktur. Red anında döner; zaman aşımından farkı budur. Önce sorunun kimin tarafında olduğunu bulun: site mobil veride ve dışarıdaki bir denetleyiciden de açılmıyorsa sorun sitededir. Aksi hâlde VPN'inizi, güvenlik yazılımınızı, hosts dosyanızı ve yönlendiricinizi kontrol edin. localhost'ta geliştirme sunucunuz o portta çalışmıyordur.

Şimdi kontrol edin

ERR_CONNECTION_REFUSED düzeltme rehberi: Chrome'un bağlanmayı reddetme ekranı ve en hızlı dört çözüm
ERR_CONNECTION_REFUSED düzeltme rehberi: Chrome'un bağlanmayı reddetme ekranı ve en hızlı dört çözüm
Okumaya başlayın
  1. ERR_CONNECTION_REFUSED Nedir?
  2. Diğer Tarayıcılarda ve Uygulamalarda Nasıl Görünür
  3. ERR_CONNECTION_REFUSED'ın Yaygın Nedenleri
  4. Tek Site mi, Tüm Siteler mi, Tüm Tarayıcılar mı?
  5. Çözüm 1: Sitenin Herkes İçin Kapalı Olup Olmadığını Kontrol Edin
  6. Çözüm 2: Yönlendiricinizi ve Cihazınızı Yeniden Başlatın
  7. Çözüm 3: Chrome'un Hatırladığı Yönlendirmeleri ve HTTPS Kurallarını Temizleyin
  8. Çözüm 4: Proxy Ayarlarınızı Kontrol Edin
  9. Çözüm 5: DNS Önbelleğinizi Temizleyin
  10. Çözüm 6: Genel Bir DNS Sunucusuna Geçin
  11. Çözüm 7: VPN, Antivirüs ve Güvenlik Duvarını Geçici Olarak Devre Dışı Bırakın
  12. Çözüm 8: Uzantıları Gizli Modda Test Edin
  13. Çözüm 9: Hosts Dosyanızı Kontrol Edin
  14. Çözüm 10: Android veya iPhone'da
  15. Localhost Refused to Connect (Geliştiriciler İçin)
  16. Gömülü Bir Sayfada "Bağlanmayı Reddetti" Görünüyorsa
  17. Web Sitesi Sahipleri İçin: Siteniz Bağlantıları Reddediyor
  18. Çözümün İşe Yaradığını Nasıl Doğrularsınız
  19. Sıkça Sorulan Sorular

ERR_CONNECTION_REFUSED Nedir?

ERR_CONNECTION_REFUSED, tarayıcınızın web sitesinin IP adresini bulduğu ama o adresteki makinenin bağlantıyı reddettiği anlamına gelir. Chrome, "Bu siteye ulaşılamıyor" başlığı altında "example.com bağlanmayı reddetti." metnini ve ERR_CONNECTION_REFUSED kodunu gösterir; bu, Chromium'un hata listesinde -102 numaralı hatadır (net_error_list.h).

Cihazınız sunucunun IP adresine ve portuna (HTTPS için 443, HTTP için 80) bir TCP bağlantı isteği gönderdi ve hemen bir ret aldı; bu ret ya bir TCP sıfırlaması (reset) ya da bir güvenlik duvarının "port unreachable" (port erişilemez) iletisidir: o portta bağlantı kabul eden bir program yoktu ya da bir güvenlik duvarı isteği reddetti. DNS çalıştı; bağlantı çalışmadı.

Başka bir deyişle bu bir yanıttır, sessizlik değil. Hiç kimse yanıt vermezse Chrome bekler ve ERR_CONNECTION_TIMED_OUT gösterir. Bağlantı açılıp sonra kesilirse bu ERR_CONNECTION_RESET olur; sunucu sayfayı göndermeden bağlantıyı kapatırsa ERR_CONNECTION_CLOSED olur.

Herkesi mi reddediyor, yalnızca sizi mi? Kontrol edin

Diğer Tarayıcılarda ve Uygulamalarda Nasıl Görünür

Reddedilen bağlantı her yerde aynı olaydır; yalnızca ifade değişir. Chromium tabanlı tarayıcılar (Chrome, Edge, Brave, Opera) ERR_CONNECTION_REFUSED kodunu gösterir, uygulamalar ise işletim sisteminin kendi hatasını bildirir:

NeredeNe görürsünüz
Chrome, Brave, OperaBu siteye ulaşılamıyor · example.com bağlanmayı reddetti. · ERR_CONNECTION_REFUSED
Microsoft EdgeEdge'in başlığı (İngilizce, "Hmmm… can't reach this page") · example.com bağlanmayı reddetti. · ERR_CONNECTION_REFUSED
FirefoxBaşlık İngilizce, "Unable to connect" · Firefox example.com sunucusuna bağlanamadı
SafariSafari Sunucuya Bağlanamıyor
DevTools konsolu, Android WebView uygulamalarınet::ERR_CONNECTION_REFUSED
Windows uygulamaları10061 hatası (WSAECONNREFUSED): "No connection could be made because the target machine actively refused it"
Linux ve macOS (ssh, nc, betikler)"Connection refused" (ECONNREFUSED: Linux'ta 111, macOS'ta 61 numaralı hata)
curlcurl: (7) Failed to connect to example.com port 443 after 2 ms: Couldn't connect to server
Node.jsconnect ECONNREFUSED 127.0.0.1:3000

Aşağıdaki çözümler ifade ne olursa olsun geçerlidir: o adreste ve portta bir şey "hayır" dedi.

ERR_CONNECTION_REFUSED'ın Yaygın Nedenleri

Nedenler, web sitesinin tarafından sizin tarafınıza doğru:

  • Web sitesinin sunucusu kapalı — web sunucusu (nginx, Apache, Node.js) çökmüş, yeniden başlıyor ya da durdurulmuştur. Makine çevrimiçidir ama 80 veya 443 portunda hiçbir şey yanıt vermez.
  • Reddedecek şekilde ayarlanmış bir güvenlik duvarı — sunucudaki, ağınızdaki ya da cihazınızdaki bir güvenlik duvarı, o porta gelen bağlantıları sessizce düşürmek yerine reddeder.
  • Site ağınızı engelliyor — bazı siteler VPN çıkış sunucuları ya da bir ülke gibi adres aralıklarının tamamını reddeder.
  • Güvenlik yazılımı veya VPN — trafiğinizi kendi üzerinden geçiren ve bağlantıyı reddeden bir antivirüs web kalkanı ya da VPN. (Kendi cihazınızdaki bir güvenlik duvarı Chrome'u engellerse farklı bir sayfa görürsünüz: "İnternet erişiminiz engellendi", ERR_NETWORK_ACCESS_DENIED.)
  • Yanlış IP adresi — eski bir DNS önbelleği ya da hosts dosyasındaki bir kayıt sizi eski bir sunucuya ya da hiçbir şeyin dinlemediği kendi bilgisayarınıza (127.0.0.1) yönlendirir.
  • Hatırlanan bir yönlendirme veya HTTPS kuralı — Chrome bir yönlendirmeyi ya da sitenin HSTS kuralını önbelleğe almıştır ve sizi sitenin artık hizmet vermediği bir porta göndermeyi sürdürür.
  • localhost'ta dinleyen bir şey yok — geliştiriciler için: yerel sunucu çalışmıyor, çökmüş ya da açtığınızdan farklı bir portta veya adreste çalışıyordur.

Tek Site mi, Tüm Siteler mi, Tüm Tarayıcılar mı?

Hatanın nerede görüldüğü, hiçbir şeyi değiştirmeden önce nereye bakmanız gerektiğini söyler:

Neyin açılmadığıEn olası nedenNereden başlanır
Tek site, tüm ağlarda (Wi-Fi ve mobil veri)Site kapalı ya da herkesi reddediyorÇözüm 1, sonra beklemek veya site sahibine haber vermek
Tek site, yalnızca Wi-Fi'nizde veya ofis ağındaO ağın güvenlik duvarı ya da sitenin o ağın adresini engellemesiMobil veri, Çözüm 2, ağ yöneticisi
Tek site, yalnızca bilgisayarınızdahosts dosyanız, DNS önbelleğiniz ya da hatırlanan bir yönlendirmeÇözüm 3, 5 ve 9
Tüm siteler, tüm tarayıcılardaGüvenlik yazılımı, VPN ya da yönlendiriciÇözüm 2 ve 7
localhost veya 127.0.0.1Geliştirme sunucunuz orada dinlemiyorAşağıdaki localhost bölümü

"Tüm tarayıcılarda" ifadesi önemlidir: Edge, Firefox ve Safari, Chrome'un önbelleğini ya da uzantılarını paylaşmaz; dolayısıyla hepsinde görülen bir ret, sorunun tarayıcının altında olduğunu, yani cihazınızda, ağınızda veya sitenin kendisinde olduğunu gösterir.

Çözüm 1: Sitenin Herkes İçin Kapalı Olup Olmadığını Kontrol Edin

Cihazınızda herhangi bir şeyi değiştirmeden önce sitenin herkesi reddedip reddetmediğini öğrenin. Reddediyorsa sizin tarafınızdaki hiçbir çözüm işe yaramaz.

En hızlı test, farklı bir ağ yoludur: siteyi telefonunuzda mobil veriyle açın (Wi-Fi kapalı). Ardından sunucuyu şu DNS Robot araçlarıyla dışarıdan test edin:

  • Site Çöktü mü Kontrolü — siteyi 11 noktadan ve kendi tarayıcınızdan açar. Her yerde kapalıysa sorun sitededir; sizin dışınızda her yerde açıksa sorun sizin tarafınızdadır.
  • Port Kontrolü — siteyi 443 portuyla girin (ya da example.com:443). Kapalı, sunucunun bizim bağlantımızı da reddettiği anlamına gelir; açık, sunucunun bağlantı kabul ettiği ve retin yalnızca sizde olduğu anlamına gelir.
  • Ping Testi — siteye 11 şehirden 443 portu üzerinden bağlanır, ayrıca tek bir noktadan klasik ping gönderir. Tüm şehirlerden reddediliyorsa makine açıktır ama o portta dinleyen yoktur; klasik pinge yanıt gelmemesi hiçbir şeyi kanıtlamaz, çünkü birçok sunucu onu yok sayar.

Çözüm 2: Yönlendiricinizi ve Cihazınızı Yeniden Başlatın

Chrome'un ilk önerisi olan "Bağlantınızı kontrol etme", kullandığınız yönlendiricileri, modemleri veya diğer ağ cihazlarını yeniden başlatmanızı söyler. Bu, yönlendiricide biriken tüm durumu, DNS önbelleği dahil, temizler.

Yönlendiricinizin (ayrıysa modemin de) fişini çekin, 30 saniye bekleyin, tekrar takın ve tamamen yeniden bağlanması için 2–3 dakika tanıyın. Ağ yığınını sıfırlamak için bilgisayarınızı veya telefonunuzu da yeniden başlatın, sonra siteyi tekrar deneyin.

Çözüm 3: Chrome'un Hatırladığı Yönlendirmeleri ve HTTPS Kurallarını Temizleyin

Chrome, kalıcı yönlendirmeleri ve her sitenin HSTS kuralını ("her zaman HTTPS kullan") hatırlar. Site taşındıysa ya da 443 portunda HTTPS sunmayı bıraktıysa Chrome sizi hiçbir şeyin dinlemediği bir adrese veya porta göndermeyi sürdürür.

  • Chrome'u açın → üç nokta menüsü → Tarama verilerini sil
  • Zaman aralığı → Tüm zamanlar, Önbelleğe alınan resimler ve dosyalar seçeneğini işaretleyin (çerezler kalabilir)
  • Verileri sil'e tıklayın (Chrome'da oturum açmadıysanız Bu cihazdan sil) ve siteyi tekrar deneyin
  • Hâlâ reddediliyor mu? chrome://net-internals/#hsts adresini açın, alan adını Delete domain security policies altına yazın ve Delete'e tıklayın. Bu yalnızca sitenin kendi koyduğu kurallar için işe yarar; Chrome'un HSTS ön yükleme listesine dahil edilmiş alan adları için çalışmaz.

2026'dan bir değişiklik: Chrome 154 (Ekim 2026), "Her zaman güvenli bağlantılar kullan" ayarını varsayılan olarak açar. Böylece Chrome, HTTPS olmayan bir herkese açık siteye ilk ziyaretten önce sessizce denemek yerine izninizi ister (Google Security Blog).

Çözüm 4: Proxy Ayarlarınızı Kontrol Edin

Chrome'un hata sayfası proxy'yi de sayar; bu yüzden kontrol edin, ama ne bekleyeceğinizi bilin. Chrome bir proxy sunucusuna ulaşamadığında ERR_CONNECTION_REFUSED yerine "İnternet bağlantısı yok" başlıklı bir sayfa ve ERR_PROXY_CONNECTION_FAILED ("Proxy sunucusunda bir sorun var veya adres yanlış") gösterir. Gördüğünüz sayfa buysa çözüm buradadır.

Windows: Ayarlar → Ağ ve İnternet → Proxy. "Manuel proxy kurulumu" altında "Proxy sunucusu kullan" yanındaki Düzenle'ye tıklayın, ayarı kapatın ve Kaydet'e tıklayın. Adresi tanımıyorsanız "Kurulum betiğini kullan" ayarını da kapatın. Ağınızın kullanmadığını bilmiyorsanız "Ayarları otomatik olarak algıla" açık kalsın.

macOS: Sistem Ayarları → Ağ → Wi-Fi → Ayrıntılar → Proxy. Kuruluşunuzun kurmadığı tüm proxy'leri kapatın, sonra Tamam'a tıklayın.

Chrome sistemin proxy ayarlarını kullanır, Firefox da varsayılan olarak öyle yapar ("Sistem vekil sunucu ayarlarını kullan"); bu yüzden eskimiş tek bir proxy tüm tarayıcıları aynı anda bozar. Okul veya iş cihazında proxy'yi yönetici belirler ve siz değiştiremezsiniz.

Çözüm 5: DNS Önbelleğinizi Temizleyin

Site yeni bir sunucuya taşındıysa önbellekteki bir DNS yanıtı hâlâ artık hiçbir şeyin dinlemediği eski IP adresini gösteriyor olabilir. Önbelleği temizlemek cihazınızı güncel adresi aramaya zorlar.

bash
# Windows (Command Prompt as Administrator)
ipconfig /flushdns

# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

# Linux (systemd-resolved)
sudo resolvectl flush-caches

# Also clear Chrome's internal DNS cache:
# chrome://net-internals/#dns → Clear host cache

Temizledikten sonra Chrome'un kendi DNS önbelleğini chrome://net-internals/#dns adresinden de temizleyin ve soket havuzlarını chrome://net-internals/#sockets adresinden boşaltın; Chrome bu ikisini işletim sisteminden ayrı tutar. Ayrıntılı anlatım için her işletim sisteminde DNS önbelleği nasıl temizlenir rehberimize bakın.

Bilgisayarınızın gerçekte kullandığı adresi (hosts dosyası ve önbellek dahil) görmek için ping example.com komutunu ya da PowerShell'de Resolve-DnsName example.com komutunu çalıştırın ve sonucu DNS Sorgulama ile karşılaştırın. Bunun için nslookup kullanmayın: DNS sunucusuna doğrudan sorar ve her ikisini de atlar.

Çözüm 6: Genel Bir DNS Sunucusuna Geçin

Önbelleği temizledikten sonra da internet sağlayıcınızın çözümleyicisi eski bir adres vermeyi sürdürüyorsa taze bir yanıt için genel bir çözümleyiciye geçin.

SağlayıcıBirincil DNSİkincil DNSEn İyi Kullanım
Cloudflare1.1.1.11.0.0.1Hız ve gizlilik
Google Public DNS8.8.8.88.8.4.4Güvenilirlik
Quad99.9.9.9149.112.112.112Kötü amaçlı yazılım engelleme
OpenDNS208.67.222.222208.67.220.220İçerik filtreleme

Windows: Ayarlar → Ağ ve İnternet → Wi-Fi → "Bilinen ağları yönet" → ağınız (Ethernet → ağınız) → "DNS sunucusu ataması" yanındaki Düzenle → Manuel → IPv4 açık → Tercih edilen DNS 1.1.1.1, Alternatif DNS 1.0.0.1 → Kaydet.

macOS: Sistem Ayarları → Ağ → Wi-Fi → Ayrıntılar → DNS → 1.1.1.1 ve 1.0.0.1 ekleyin, eski kayıtları kaldırın → Tamam.

Bulunduğunuz yerden hangi çözümleyicinin en hızlı olduğundan emin değil misiniz? DNS Robot'un DNS Hız Testi aracını çalıştırın: Cloudflare, Google, Quad9 ve diğerlerini kendi bağlantınızdan saniyeler içinde karşılaştırır.

Çözüm 7: VPN, Antivirüs ve Güvenlik Duvarını Geçici Olarak Devre Dışı Bırakın

VPN'ler, antivirüs web kalkanları ve güvenlik duvarları tarayıcınızla internet arasında yer alır ve her biri bir bağlantıyı reddedebilir. HTTPS'i tarayan web kalkanları trafiğinizi yerel bir hizmetten geçirir; bu hizmet bozulursa HTTPS siteleri tüm tarayıcılarda aynı anda açılmayabilir. Üstelik bazı siteler VPN adreslerini doğrudan reddeder.

Birer birer deneyin: VPN'in bağlantısını kesin ve sayfayı yenileyin. Sonra antivirüsün web korumasını bir dakikalığına duraklatıp yenileyin. Son olarak, çoğu zaman bir antivirüs paketinin parçası olan üçüncü taraf güvenlik duvarlarını duraklatın. (macOS güvenlik duvarı yalnızca gelen bağlantıları süzer; Windows Defender Güvenlik Duvarı da biri kural eklemediği sürece giden trafiğe izin verir. Chrome "İnternet erişiminiz engellendi" diyorsa neden cihazınızdaki bir güvenlik duvarıdır.)

Bunlardan biri kapalıyken site açılıyorsa korumayı kapalı bırakmak yerine onu tekrar açın ve site için bir istisna ekleyin ya da başka bir VPN sunucusu seçin.

Çözüm 8: Uzantıları Gizli Modda Test Edin

Uzantılar bu koda nadiren yol açar: bir siteyi engelleyen uzantı ERR_BLOCKED_BY_CLIENT gösterir. Ancak Gizli pencere (Ctrl+Shift+N veya Mac'te Cmd+Shift+N), izin vermediğiniz sürece uzantılar orada kapalı olduğundan, uzantıları ve önbellekteki verileri aynı anda eleyen on saniyelik bir testtir.

Site Gizli modda açılıyorsa chrome://extensions adresine gidin, hepsini kapatın, sonra hata dönene kadar birer birer açın. Gizli modda da açılmıyorsa neden Chrome'un dışındadır.

Çözüm 9: Hosts Dosyanızı Kontrol Edin

hosts dosyanız, içinde yer alan adlar için DNS'in önüne geçer. Site orada 127.0.0.1 adresine ya da eski bir sunucunun IP'sine eşlenmişse tarayıcınız oraya bağlanır ve reddedilir. Unutulmuş geliştirme kayıtları ve reklam engelleyen hosts listeleri olağan şüphelilerdir; dosya tüm tarayıcıları etkiler.

bash
# Windows — open as Administrator:
notepad C:\Windows\System32\drivers\etc\hosts

# macOS / Linux:
sudo nano /etc/hosts

# Look for lines containing the domain, e.g.:
# 127.0.0.1   example.com   ← forces the connection to your own PC
# 203.0.113.7 example.com   ← forces an old server IP

# Delete the offending line, save, then flush DNS.

Çözüm 10: Android veya iPhone'da

Telefonlar aynı nedenlerle bağlantıyı reddeder, yalnızca düğmeler farklıdır:

  • Ağı değiştirin: siteyi önce mobil veride, sonra Wi-Fi'da yükleyin. Yalnızca biri reddediyorsa sorun telefonda değil, o ağdadır.
  • VPN uygulamalarını kapatın; VPN olarak çalışan reklam engelleyiciler ve güvenlik duvarları dahil (durum çubuğunda anahtar ya da VPN simgesi gösterirler).
  • Wi-Fi proxy'sini kaldırın: Android'de Wi-Fi ağının ayarlarını açın → kalem simgesi (Değiştir) → Gelişmiş seçenekler → Proxy → Yok (ifade telefon üreticisine göre değişir). iPhone'da: Ayarlar → Wi-Fi → ağın yanındaki ⓘ → Proxy'yi Ayarla → "Off" (kapalı).
  • Chrome verilerini silin: Chrome → Ayarlar → Gizlilik ve güvenlik → Tarama verilerini sil → Önbelleğe alınan resimler ve dosyalar.
  • Kendi sunucunuzu mu test ediyorsunuz? Telefonda localhost, telefonun kendisidir. Bunun yerine bilgisayarınızın yerel IP adresini kullanın (sonraki bölüme bakın).

Localhost Refused to Connect (Geliştiriciler İçin)

127.0.0.1'de localhost refused to connect veya ERR_CONNECTION_REFUSED görmek, makinenizde açtığınız adreste ve portta bağlantı kabul eden hiçbir şeyin olmadığı anlamına gelir. Olağan nedenler:

  • Geliştirme sunucusu çalışmıyor — hiç başlatmadınız ya da çöktü. npm run dev, rails s veya python manage.py runserver komutunun çalışıyor olması gereken terminale bakın.
  • Yanlış port — sunucu başka bir portta başladı (örneğin 3000 meşgul olduğu için 3001). Adresi başlangıç satırından kopyalayın.
  • Adreste port yok — http://localhost 80 portuna gider; geliştirme sunucuları ise kendi portlarını kullanır (3000, 5173, 8000, 8080).
  • 127.0.0.1 ile [::1] — tarayıcılar localhost için iki adresi de dener, ama bir sunucu yalnızca birinde dinliyor olabilir. Diğer adresi doğrudan açmak (http://127.0.0.1:3000 veya http://[::1]:3000) ya da yalnızca birini deneyen bir araçtan bağlanmak reddedilir.
  • Docker içinde — uygulama konteynerin içinde 0.0.0.0 üzerinde dinlemeli ve port yayımlanmış olmalıdır (-p 3000:3000). Konteynerde 127.0.0.1'e bağlı bir uygulamaya makinenizden ulaşılamaz (bunun yerine ERR_EMPTY_RESPONSE görebilirsiniz).
  • Telefondan veya emülatörden — orada localhost cihazın kendisidir. Bilgisayarınızın yerel ağ IP'sini kullanın ve geliştirme sunucusunu tüm arayüzlerde başlatın (Vite: --host) ya da Android Emülatörü'nden, bilgisayarınızın localhost'u için takma adı olan 10.0.2.2 adresini kullanın.
bash
# What is listening on port 3000?
# macOS / Linux:
lsof -nP -iTCP:3000 -sTCP:LISTEN

# Windows (PowerShell):
netstat -ano | findstr :3000 | findstr LISTENING

# No output = nothing is listening = connection refused.
# 127.0.0.1:3000 in the output = IPv4 only; [::1]:3000 = IPv6 only.

Herkese açık sunucunuzdaki bir portun (yalnızca makinenin kendisinden değil) internetten erişilebilir olup olmadığını kontrol etmeniz gerekiyorsa DNS Robot'un Port Kontrolü aracını kullanın: bağlantıyı ağınızın dışından test eder; ziyaretçilerinizin gerçekte yaşadığı budur.

Gömülü Bir Sayfada "Bağlanmayı Reddetti" Görünüyorsa

"example.com bağlanmayı reddetti." iletisi başka bir sayfanın içindeki bir kutuda (gömülü bir form, rapor, harita veya oturum açma ekranı) görünüyorsa bu genellikle bir ağ sorunu değildir. Chrome, gömülü site kendisinin başka sitelerin sayfalarında gösterilmesini bir X-Frame-Options ya da Content-Security-Policy: frame-ancestors başlığıyla yasakladığında da aynı cümleyi gösterir. Dahili olarak bu ERR_BLOCKED_BY_RESPONSE, -27 numaralı hatadır (net_error_list.h).

Ziyaretçiyseniz gömülü bağlantıyı kendi sekmesinde açın; orada yüklenir. Site sahibiyseniz sizi gömen sayfaya Content-Security-Policy: frame-ancestors 'self' https://parent.example ile izin verin. X-Frame-Options yalnızca DENY veya SAMEORIGIN diyebilir ve güncel tarayıcılar bir sayfa ikisini birden gönderdiğinde frame-ancestors'a uyar. Sitenizin ne gönderdiğini HTTP Başlık Kontrolü ile görün; kesin başlıklar X-Frame-Options rehberimizde var.

Web Sitesi Sahipleri İçin: Siteniz Bağlantıları Reddediyor

Ziyaretçiler sitenizde ERR_CONNECTION_REFUSED bildiriyorsa paketleri sizin IP'nizdeki bir makineye ulaşıyor ama orada hiçbir şey bağlantıyı kabul etmiyordur. Şu kontrol listesini uygulayın:

  • Web sunucusu çalışıyor mu? SSH ile bağlanıp systemctl status nginx (veya apache2, caddy) komutunu kontrol edin. Bozuk bir yapılandırma yüzünden yeniden başlatmadan sonra açılamayan ya da makinenin belleği bitince sonlandırılan bir sunucu, dinleyen hiçbir şey bırakmaz. sudo systemctl restart nginx ile yeniden başlatın.
  • Doğru portlarda ve adreslerde dinliyor mu? ss -tlnp | grep -E ':(80|443) ' komutunu çalıştırın. Yalnızca 127.0.0.1'de dinleyen bir sunucu dışarıdaki herkesi reddeder; 443'te hiçbir şey olmaması orada dinleyen bir sunucu bloğu olmadığı anlamına gelir (HTTPS hiç kurulmamıştır ya da sitenin dosyası etkinleştirilmemiştir). nginx -T, gerçekten yüklenmiş yapılandırmayı yazdırır.
  • Bir güvenlik duvarı mı reddediyor? Reddetmeye ayarlı bir kural (iptables REJECT, ufw reject) ret gönderir. ufw'nin varsayılan deny kuralı ve AWS güvenlik grupları gibi bulut güvenlik duvarları ise paketleri sessizce düşürür; ziyaretçiler bunu ERR_CONNECTION_TIMED_OUT olarak görür.
  • fail2ban birini mi yasakladı? Varsayılan yasağı, yasaklı adresi reddeder; bu yüzden o ziyaretçi (ya da birkaç başarısız SSH girişinden sonra siz) ERR_CONNECTION_REFUSED alırken diğer herkes girer. sudo fail2ban-client status komutuna bakın.
  • Sunucunuzun IP'si değişti mi? A kaydınızı sunucunun gerçek IP'siyle DNS Sorgulama kullanarak karşılaştırın. Taşımadan sonra eski bir A kaydı ziyaretçileri önceki makineye gönderir.
  • Cloudflare'in arkasında mı? Proxied (turuncu bulut) kayıtlarda ziyaretçiler size değil Cloudflare'e bağlanır, dolayısıyla bu kodu görmez. Kaynak sunucunuz Cloudflare'in bağlantılarını reddettiğinde Cloudflare kendi Error 521: Web server is down sayfasını gösterir.
  • Dışarıdan test edin: 80 ve 443 portlarında Port Kontrolü ve herkese açık internetten gerçek bir istek için HTTP Başlık Kontrolü.

Çözümün İşe Yaradığını Nasıl Doğrularsınız

Her çözümden sonra yalnızca sayfayı yenilemekle yetinmeyin, bağlantıyı ağ düzeyinde doğrulayın: bu, portun gerçekten açılıp açılmadığını gösterir.

bash
# Test the TCP connection directly (Mac/Linux):
nc -zv -w 5 example.com 443
# "succeeded" = port open, "refused" = still rejected

# Windows (PowerShell):
Test-NetConnection example.com -Port 443
# TcpTestSucceeded : True = fixed

# Then confirm the address your computer actually uses:
ping -c 1 example.com          # Mac/Linux
Resolve-DnsName example.com    # Windows PowerShell

Ya da terminali atlayın: alan adını ve portu DNS Robot'un Port Kontrolü aracından geçirin; ağınızın dışından açık/kapalı yanıtını alırsınız. Port dışarıdan açıksa ama tarayıcınız hâlâ ERR_CONNECTION_REFUSED gösteriyorsa engel cihazınızda ya da ağınızdadır: VPN, güvenlik yazılımı ve hosts dosyası çözümlerine dönün.

Port açık mı, yoksa sunucu gerçekten mi reddediyor?

DNS Robot'un ücretsiz Port Kontrolü aracı, ağınızın dışından herhangi bir alan adına ve porta bağlanır; portun açık, kapalı (reddedildi) ya da filtrelenmiş (yanıt yok) olduğunu söyler. Bizim için de kapalıysa site yalnızca sizi değil herkesi reddediyordur.

Kaynaklar

  1. net_error_list.h (CONNECTION_REFUSED -102, BLOCKED_BY_RESPONSE -27), Chromium
  2. Windows Sockets error codes (WSAECONNREFUSED 10061), Microsoft
  3. Content-Security-Policy: frame-ancestors, MDN
  4. error_page_strings.grdp (Chrome's error page wording), Chromium
  5. Error 521: web server is down, Cloudflare

Sıkça Sorulan Sorular

ERR_CONNECTION_REFUSED ne anlama gelir?

Tarayıcınız web sitesinin IP adresini buldu, ama oradaki makine o portta bağlantıyı reddetti. Chrome buna -102 numaralı hata der ve "[site] bağlanmayı reddetti." gösterir. Genellikle web sunucusu kapalıdır, bir güvenlik duvarı bağlantıyı reddediyordur ya da cihazınız eski bir önbellek veya hosts dosyasındaki bir kayıt yüzünden yanlış adrese bağlanmıştır.

ERR_CONNECTION_REFUSED benim hatam mı yoksa web sitesinin hatası mı?

İkisi de olabilir. Siteyi telefonunuzda mobil veriyle açın ve 443 portunda bir site erişim ya da port denetleyicisinden geçirin. Dışarıdan da reddediliyorsa sorun sitededir ve beklemeniz gerekir. Başka yerde açılıyorsa neden cihazınızda veya ağınızdadır: VPN, güvenlik yazılımı, hosts dosyası ya da yönlendirici.

Chrome'da ERR_CONNECTION_REFUSED nasıl düzeltilir?

Sitenin herkes için kapalı olup olmadığına bakın, yönlendiriciyi yeniden başlatın, VPN bağlantısını kesin ve antivirüsün web korumasını duraklatın, hosts dosyasını kontrol edin, DNS önbelleğini temizleyin (Windows'ta ipconfig /flushdns) ve Chrome'un önbelleğe alınan resimlerini ve dosyalarını silin. Chrome bunun yerine ERR_PROXY_CONNECTION_FAILED gösteriyorsa sistem ayarlarından proxy'yi kapatın.

ERR_CONNECTION_REFUSED neden tüm tarayıcılarda çıkıyor?

Çünkü neden tarayıcının altındadır. Tek bir site tüm tarayıcılarda açılmıyorsa site kapalıdır, hosts dosyanız ya da DNS önbelleğiniz yanlış sunucuyu gösteriyordur veya ağınız engellenmiştir. Her site tüm tarayıcılarda açılmıyorsa güvenlik yazılımına (antivirüs web kalkanı ya da güvenlik duvarı), VPN'e ve yönlendiriciye bakın.

Android veya iPhone'da ERR_CONNECTION_REFUSED nasıl düzeltilir?

Hangi ağın reddettiğini görmek için siteyi önce mobil veride, sonra Wi-Fi'da yükleyin. VPN uygulamalarını, VPN olarak çalışan reklam engelleyiciler dahil, kapatın ve Wi-Fi ağının ayarlarından proxy'yi kaldırın (iPhone: Wi-Fi → ⓘ → Proxy'yi Ayarla → "Off"). Sonra Chrome'un önbelleğe alınan dosyalarını silin. Telefonda localhost, telefonun kendisidir.

localhost neden bağlantıyı reddediyor?

Makinenizde o adreste ve portta dinleyen hiçbir şey yoktur: geliştirme sunucusu çalışmıyordur, başka bir portta başlamıştır ya da siz 127.0.0.1'i açarken yalnızca [::1]'de dinliyordur (veya tersi). Mac ya da Linux'ta lsof -nP -iTCP:PORT -sTCP:LISTEN, Windows'ta netstat -ano | findstr :PORT | findstr LISTENING komutunu çalıştırın.

ERR_CONNECTION_REFUSED ile ERR_CONNECTION_TIMED_OUT arasındaki fark nedir?

Refused, sunucunun ya da bir güvenlik duvarının bir retle (TCP sıfırlaması veya "port unreachable" iletisi) yanıt verdiği anlamına gelir; bu yüzden hata anında döner. Timed out ise hiçbir şeyin yanıt vermediği ve Chrome'un beklemeyi bıraktığı anlamına gelir. Refused kapalı bir hizmete ya da kapalı bir porta işaret eder; zaman aşımı erişilemeyen bir sunucuya ya da paketleri sessizce düşüren bir güvenlik duvarına işaret eder.

Bir güvenlik duvarı ERR_CONNECTION_REFUSED hatasına yol açabilir mi?

Evet: trafiği düşürmek yerine reddetmeye ayarlı bir sunucu ya da ağ güvenlik duvarı bir ret gönderir; tarayıcılar bunu reddedilen bağlantı olarak gösterir. fail2ban'ın varsayılan yasağı da böyle çalışır. Paketleri sessizce düşüren güvenlik duvarları, örneğin bulut güvenlik grupları, zaman aşımına yol açar; kendi cihazınızdaki bir güvenlik duvarı ise "İnternet erişiminiz engellendi" gösterir.

Minecraft neden "Connection refused" diyor?

"Connection refused: no further information", sunucunun adresinin yanıt verdiği ama portunda hiçbir şeyin bağlantıyı kabul etmediği anlamına gelir: sunucu kapalıdır ya da hâlâ açılıyordur, adres veya port yanlıştır (Java Edition sunucuları başka şekilde ayarlanmadıkça 25565 kullanır) veya barındırıcının güvenlik duvarı ya da port yönlendirmesi oyuncuları içeri almıyordur. Adresi ve portu bir port denetleyiciyle test edin.

ERR_CONNECTION_REFUSED engellendiğim veya yasaklandığım anlamına mı gelir?

Genellikle hayır. Ziyaretçileri yasaklayan siteler normalde 403 Forbidden sayfası ya da bir engelleme ekranı döndürür. Ancak bir sunucunun güvenlik duvarı VPN çıkış sunucuları gibi IP aralıklarının tamamını reddedebilir ve bu gerçekten ERR_CONNECTION_REFUSED olarak görünür. Site başka bir ağdan açılıp sizin ağınızdan hiç açılmıyorsa IP engeli olası bir nedendir.

Yazar hakkında

Shaik Vahid

DNS Robot'un kurucusu. Vahid, yıllarca web hosting desteğinde müşterilerin alan adı, DNS kaydı, SSL sertifikası ve e-posta teslimi sorunlarını çözdü. DNS Robot'un araçlarını geliştiriyor ve bu rehberleri insanların gerçekten karşılaştığı hatalardan yola çıkarak yazıyor.

Port Kontrolü

Port bağlantısını ve servis kullanılabilirliğini test edin