15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın
30.10.2024
1 +1

macOS Hosts Dosyası: Yerel DNS Kontrolü İçin Eksiksiz Kılavuz

İster lansman öncesinde yeni bir siteyi test eden bir geliştirici olun, ister sunucu geçişi sorunlarını gideriyor olun, isterse sadece dikkat dağıtıcı web sitelerini engelliyor olun, macOS hosts dosyası cephaneliğinizdeki en güçlü — ve en az kullanılan — araçlardan biridir. Bu kapsamlı kılavuz, bilmeniz gereken her şeyi ele almaktadır: hosts dosyasının ne olduğu, nerede bulunduğu, nasıl güvenli şekilde düzenleneceği ve hazırlık sunucusu testi ile yerel geliştirme ortamları gibi gerçek dünya iş akışlarında nasıl kullanılacağı.

Hosts Dosyası Nedir?

Hosts dosyası, insan tarafından okunabilir ana bilgisayar adlarını (example.com gibi) belirli IP adresleriyle eşleştiren düz metin biçiminde bir sistem dosyasıdır. Mac’iniz harici bir çözümleyiciye DNS sorgusu göndermeden önce önce yerel hosts dosyasını kontrol eder. Eşleşen bir giriş varsa, o IP adresini kullanır — hiçbir DNS sunucusu devreye girmez.

Bu, hosts dosyasını bir tür yerel DNS geçersiz kılma katmanı haline getirir ve makinenizin alan adlarını nasıl çözümlediği üzerinde ayrıntılı kontrol sağlar. Arka planda sessizce çalışır ve doğru kullanıldığında geliştiriciler ve sistem yöneticileri için inanılmaz derecede verimli bir araçtır.

Temel Kullanım Alanlarına Genel Bakış

Kullanım AlanıNe Yapar
Web Sitesi EngellemeErişimi engellemek için bir alan adını 0.0.0.0 ile eşleştirir
Yerel GeliştirmeLocalhost testi için özel bir alan adını 127.0.0.1 ile eşleştirir
DNS Testi / GeçişDNS yayılmadan önce canlı bir alan adını yeni sunucu IP’sine yönlendirir
Hazırlık OrtamlarıGenel DNS’i değiştirmeden yeni bir sunucudaki siteyi önizler
Güvenlik SertleştirmeBilinen kötü amaçlı veya reklam sunan alan adlarını engeller

macOS’ta Hosts Dosyası Nerede Bulunur?

macOS’ta hosts dosyası /etc/ dizininde bulunur. Tam yol şudur:

/etc/hosts

Bu, korumalı bir sistem dosyasıdır; yani değiştirmek için yönetici (root) ayrıcalıklarına ihtiyacınız vardır. Dosyaya çift tıklayıp düzenlemeye başlayamazsınız — sudo aracılığıyla yükseltilmiş izinlerle Terminal kullanmanız gerekir.

> Not: macOS’taki /etc/ dizini aslında /private/etc/ dizinine sembolik bir bağlantıdır; dolayısıyla /etc/hosts ve /private/etc/hosts aynı dosyayı gösterir.

macOS’ta Hosts Dosyası Nasıl Düzenlenir: Adım Adım

Adım 1 — Terminal’i Açın

Terminal uygulamasını başlatın. Bunu iki şekilde yapabilirsiniz:

  • Spotlight Arama: Command + Space tuşlarına basın, Terminal yazın ve Enter tuşuna basın
  • Finder: Applications > Utilities > Terminal yoluna gidin

Adım 2 — Hosts Dosyasını Yükseltilmiş Ayrıcalıklarla Açın

Hosts dosyasını açmak için sudo ile nano metin düzenleyicisini kullanın:

sudo nano /etc/hosts

macOS yönetici parolanızı girmeniz istenecektir. Parolayı yazın ve Enter tuşuna basın. Yazarken parola alanının boş kalacağını unutmayın — bu, Terminal’deki sudo için normal bir davranıştır.

Adım 3 — Varsayılan Girişleri Anlayın

Dosya nano’da açıldığında, macOS’un varsayılan olarak gönderdiği girişleri göreceksiniz:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

Bu varsayılan girişleri silmeyin veya değiştirmeyin. Sisteminizin düzgün çalışması için gereklidirler. Tüm özel girişler bu satırların altına eklenmelidir.

Adım 4 — Özel Girişlerinizi Ekleyin

Hosts dosyası girişinin sözdizimi oldukça basittir:

<IP address>    <hostname>    [optional alias]

Her giriş kendi satırında olmalıdır. İşte pratik örnekler:

Bir web sitesini engelleyin:

0.0.0.0    facebook.com
0.0.0.0    www.facebook.com

Yerel geliştirme alan adını eşleştirin:

127.0.0.1    myproject.local
127.0.0.1    myproject.dev

Geçiş testi için bir alan adını belirli bir sunucuya yönlendirin:

192.168.1.100    mywebsite.com
192.168.1.100    www.mywebsite.com

Hosts dosyanızı düzenli tutmak için # karakterini kullanarak satır içi yorumlar da ekleyebilirsiniz:

# --- Local Development Projects ---
127.0.0.1    project-alpha.local
127.0.0.1    project-beta.local

# --- Migration Testing: New Server IP 203.0.113.50 ---
203.0.113.50    clientsite.com
203.0.113.50    www.clientsite.com

Adım 5 — Dosyayı Kaydedin

nano’da değişikliklerinizi yaptıktan sonra:

  1. Dosyayı yazmak (kaydetmek) için Control + O tuşlarına basın
  2. Dosya adını onaylamak için Enter tuşuna basın
  3. nano’dan çıkmak için Control + X tuşlarına basın

Adım 6 — DNS Önbelleğini Temizleyin

Hosts dosyasını düzenlemek tek başına yeterli değildir — macOS, DNS aramalarını önbelleğe aldığından, sisteminizin yeni girişleri hemen tanıması için DNS önbelleğini temizlemeniz gerekir.

Terminal’de aşağıdaki komutu çalıştırın:

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Bu komut iki şey yapar:

  • dscacheutil -flushcache — yerel DNS önbelleğini temizler
  • killall -HUP mDNSResponder — macOS’ta DNS çözümlemesini yöneten mDNSResponder işlemini yeniden başlatır

Bunu çalıştırdıktan sonra tarayıcınızı açın ve alan adını test edin. Değişiklikler hemen geçerli olmalıdır.

> macOS Sürüm Notu: Yukarıdaki temizleme komutu macOS Monterey, Ventura, Sonoma ve Sequoia’da çalışır. Daha eski sürümlerde (Yosemite öncesi) komut biraz farklı olabilir.

Gerçek Dünya Kullanım Alanları Ayrıntılı Olarak

Kullanım Alanı 1: Web Sitelerini Engelleme

Hosts dosyası, dikkat dağıtıcı veya zararlı web sitelerini sistem düzeyinde engellemenin en basit ve en etkili yollarından biridir — üçüncü taraf yazılım gerekmez.

Bir alan adını 0.0.0.0 (yönlendirilemeyen bir adres) ile eşleştirerek tarayıcınızın siteye hiçbir zaman ulaşmasını engellersiniz:

0.0.0.0    reddit.com
0.0.0.0    www.reddit.com
0.0.0.0    twitter.com
0.0.0.0    www.twitter.com

Tarayıcı uzantılarının aksine, bu engelleme sistem genelinde geçerlidir — Mac’inizdeki her tarayıcı ve uygulamayı etkiler.

Kullanım Alanı 2: Yerel Geliştirme Ortamları

Yerel olarak web siteleri veya web uygulamaları geliştiriyorsanız, hosts dosyası genel http://localhost veya http://127.0.0.1 yerine localhost ortamınıza özel alan adları atamanıza olanak tanır.

127.0.0.1    myshop.local
127.0.0.1    clientproject.local
127.0.0.1    wordpress-staging.local

Bu, belirli bir ana bilgisayar adına bağlı mutlak URL’ler veya çerez alan adları kullanan WordPress, Joomla veya Laravel projeleriyle çalışırken özellikle kullanışlıdır. Bunu yerel bir web sunucusu yığınıyla (MAMP, Laravel Valet veya Docker container gibi) birleştirdiğinizde profesyonel bir yerel geliştirme iş akışına sahip olursunuz.

Geliştirme ortamınızı yerel olarak değil, uzak bir VPS Hosting örneğinde çalıştırıyorsanız, aynı ilke geçerlidir — genel DNS kayıtlarını güncellemeden önce test amacıyla bir alan adını doğrudan VPS IP’nize yönlendirebilirsiniz.

Kullanım Alanı 3: DNS Yayılımı Beklemeden Sunucu Geçişlerini Test Etme

Bu, geliştiriciler ve sistem yöneticileri için tartışmasız en değerli kullanım alanıdır. Bir web sitesini yeni bir sunucuya taşıdığınızda — ister hosting sağlayıcısı değiştiriyor ister altyapınızı yükseltiyor olun — DNS yayılımı birkaç dakikadan 48 saate kadar sürebilir.

Hosts dosyası, başka kimseyi etkilemeden kendi makinenizden yeni sunucudaki siteyi hemen önizlemenizi sağlar.

Örnek senaryo: mywebsite.com adresini 203.0.113.50 IP adresine sahip yeni bir Dedicated Server‘a taşıyorsunuz. Şu girişi ekleyin:

203.0.113.50    mywebsite.com
203.0.113.50    www.mywebsite.com

Artık tarayıcınıza mywebsite.com yazdığınızda, Mac’iniz siteyi yeni sunucudan yükler — genel DNS hâlâ eskisini gösterse bile. Bu sayede şunları yapabilirsiniz:

  • Tüm sayfaların doğru yüklendiğini doğrulayın
  • SSL sertifikalarının düzgün kurulduğunu kontrol edin
  • İletişim formlarını, ödeme akışlarını ve dinamik işlevleri test edin
  • Veritabanı bağlantılarının ve medya dosyalarının sağlam olduğunu onaylayın

Her şeyin çalıştığından emin olduktan sonra genel DNS kayıtlarını güncelleyin. Ziyaretçileriniz için geçiş sorunsuz olacaktır.

Kullanım Alanı 4: Sorun Giderme için DNS’i Atlama

Bazen DNS sorunları, sunucunun kendisi düzgün çalışıyor olsa bile bir siteye erişilemez hale gelmesine neden olabilir. Hosts dosyası, sorunu teşhis etmek için DNS’i tamamen atlamanıza ve bilinen bir IP adresine doğrudan bağlanmanıza olanak tanır.

Bu özellikle şu durumlarda kullanışlıdır:

  • Alan adınızın DNS kayıtları yanlış yapılandırılmış olduğunda
  • DNS yayılmadan önce yeni bir SSL Certificates kurulumunu test ettiğinizde
  • DNS sorunları çözülürken sunucunun doğru yanıt verdiğini doğrulamanız gerektiğinde

Kullanım Alanı 5: E-posta Hosting Yapılandırmalarını Test Etme

Email Hosting kuruyorsanız veya taşıyorsanız ve DNS kayıtları güncellenmeden önce posta sunucunuzun belirli bir IP’de erişilebilir olduğunu doğrulamanız gerekiyorsa, bağlantıyı ve yapılandırmayı test etmek için posta alan adınızı hosts dosyasında geçici olarak eşleştirebilirsiniz.

Hosts Dosyası Değişikliklerinizi Doğrulama

DNS önbelleğini temizlemeden önce, girişinizin doğru kaydedildiğini doğrulamak iyi bir uygulamadır. Hosts dosyasının mevcut içeriğini düzenlemeden şu komutla görüntüleyebilirsiniz:

cat /etc/hosts

Bir ana bilgisayar adının beklenen IP’ye çözümlendiğini doğrulamak için ping komutunu da kullanabilirsiniz:

ping mywebsite.com

Çıktı, hosts dosyasında eşleştirdiğiniz IP adresini göstermelidir.

Varsayılan Hosts Dosyasını Geri Yükleme

Hosts dosyanız karmaşık hale gelirse veya bir şeyler ters giderse, varsayılan durumuna sıfırlayabilirsiniz. Dosyayı sudo nano /etc/hosts ile açın, tüm özel girişleri kaldırın ve dosyanın yalnızca orijinal varsayılanları içerdiğinden emin olun:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

Dosyayı kaydedin, nano’dan çıkın ve Adım 6’daki komutu kullanarak DNS önbelleğini temizleyin. Sisteminiz tüm alan adları için standart DNS çözümlemesini kullanmaya geri dönecektir.

Güvenlik Değerlendirmeleri

Hosts dosyası güçlü bir araç olsa da şu güvenlik en iyi uygulamalarını göz önünde bulundurun:

  • Erişimi sınırlayın: Yalnızca yöneticilerin /etc/hosts dosyasına yazma erişimi olmalıdır. İzinleri ls -la /etc/hosts ile doğrulayın — -rw-r--r-- göstermelidir.
  • Test girişlerini kullandıktan sonra kaldırın: Geçiş testi girişlerini işiniz bittikten sonra bırakmayın. Daha sonra karışıklığa ve beklenmedik davranışlara yol açabilirler.
  • Kötü amaçlı yazılımlara dikkat edin: Bazı kötü amaçlı yazılımlar, meşru alan adlarını kötü amaçlı sunuculara yönlendirmek için hosts dosyasını değiştirir. Yetkisiz girişlerin bulunmadığından emin olmak için hosts dosyanızı periyodik olarak gözden geçirin.
  • Ekipler için sürüm kontrolü kullanın: Birden fazla geliştirici bir geliştirme ortamını paylaşıyorsa, hosts dosyası girişlerinizi paylaşılan bir README veya sürüm kontrollü yapılandırma dosyasında belgelemeyi düşünün.

Hızlı Başvuru: Temel Komutlar

GörevKomut
Hosts dosyasını düzenlemek için açınsudo nano /etc/hosts
Hosts dosyasını görüntüleyin (salt okunur)cat /etc/hosts
DNS önbelleğini temizleyin (macOS Ventura/Sonoma)sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Dosya izinlerini kontrol edinls -la /etc/hosts
Ana bilgisayar adı çözümlemesini doğrulayınping yourdomain.com
nano’da kaydedinControl + O, ardından Enter
nano’dan çıkınControl + X

Sıkça Sorulan Sorular

Hosts dosyasını düzenledikten sonra Mac’imi yeniden başlatmam gerekiyor mu?

Hayır. dscacheutil komutuyla DNS önbelleğini temizlemek yeterlidir. Yeniden başlatma gerekmez.

Hosts dosyasındaki değişiklikler Mac’imdeki diğer kullanıcıları etkiler mi?

Evet. Hosts dosyası sistem genelinde geçerlidir, dolayısıyla değişiklikler aynı makinedeki tüm kullanıcı hesaplarını etkiler.

Hosts dosyası HTTPS ile çalışır mı?

Evet, ancak bir uyarıyla. Hosts dosyası yalnızca IP çözümlemesini kontrol eder — SSL/TLS sertifikalarını yönetmez. Hosts dosyası aracılığıyla bir alan adını yeni bir sunucuya yönlendirirseniz ve o sunucudaki SSL sertifikası alan adıyla eşleşmiyorsa, tarayıcınız bir sertifika uyarısı gösterecektir.

Hosts dosyasında joker karakterler kullanabilir miyim?

Hayır. macOS hosts dosyası joker karakter girişlerini desteklemez. Her ana bilgisayar adı kendi satırında açıkça listelenmelidir.

Hosts dosyasını düzenlemek VPN’imi etkiler mi?

VPN yapılandırmanıza bağlıdır. Bazı VPN’ler yerel DNS ayarlarını geçersiz kılar; bu da VPN etkinken hosts dosyası girişlerinin yok sayılmasına neden olabilir.

Sonuç: Yerel DNS’inizin Tam Kontrolünü Elinize Alın

macOS hosts dosyası, görünürde basit ama son derece güçlü bir araçtır. Tek bir metin dosyası ve birkaç Terminal komutuyla dikkat dağıtıcı web sitelerini engelleyebilir, profesyonel yerel geliştirme ortamları oluşturabilir ve DNS yayılımını beklemeden veya canlı altyapınıza dokunmadan sunucu geçişlerini tam bir güvenle test edebilirsiniz.

VPS Control Panels ile çalışan veya Shared Web Hosting üzerinde siteleri yöneten geliştiriciler için hosts dosyasında uzmanlaşmak, saatlerce sorun giderme süresinden tasarruf etmenizi sağlayacak temel bir beceridir. Bir sonraki site geçişini hazırlarken veya yeni bir geliştirme projesi başlatırken önce /etc/hosts dosyasına başvurun — bu, Mac’inizin internetteki herhangi bir alan adını nasıl çözümlediğini kontrol etmenin en hızlı ve en güvenilir yoludur.

15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın