Route53'teki www'yi www olmayanlara nasıl yönlendiririm?


24

Adresinde sitemi barındırıyorum domain.com.

Route53'deki DNS girişlerim aşağıdaki gibidir:

domain.com      A       xxx.xxx.xxx.xxx      300
domain.com      NS      stuff.awsdns-47.org  172800
domain.com      SOA     stuff.awsdns-47.org  900

Ben trafiği yönlendirmek istiyorum www.domain.comiçin domain.comolduğu gibi şu anda bu sadece bir 404. döndürür SO üzerinde bu soru önerilen bir PTRrekor ve bunu ekledi:

www.domain.com  PTR     domain.com           300

ama işe yaramadı. Ne yapmalıyım


3
Gerçekten bir HTTP yönlendirmesi göndermek istiyorsanız, bunu DNS içinde yapamazsınız. Adres çubuğundaki URL’yi değiştirmeyi umursamıyorsanız, pauska’nın önerdiği gibi bir CNAME kullanın. Eğer önemsiyorsanız, 301'i göndermek için bir tür web sunucusuna ihtiyacınız olacak.
cjc

@cjc Adres çubuğundaki URL'yi umursamıyorum.
Fredley

Yanıtlar:


22

PTR, geriye doğru IP aramaları ayarlamak içindir ve umursamanız gereken bir şey değildir. Onu kaldır.

İhtiyacınız olan şey www için bir CNAME:

www.domain.com  CNAME  domain.com 300

15
Bu bir yönlendirme değil. Bir tür üçüncü taraf hizmetinde geri arama URL’si tanımlamanız gerekirse, yukarıdaki çözüm işe yaramayacaktır. Örneğin oAuth (Facebook, Twitter) Kimlik Doğrulama.
Ck

14

WWW için bir ALIAS da domain.com A kaydı olarak ayarlayabilirsiniz:

www.domain.com A ALIAS domain.com 300

bu nedenle son DNS girişleriniz şöyle olacaktır:

domain.com          A       xxx.xxx.xxx.xxx      300
domain.com          NS      stuff.awsdns-47.org  172800
domain.com          SOA     stuff.awsdns-47.org  900
www.domain.com      A       ALIAS domain.com (Hosted Zone ID)

Bunu yaptım ancak hala çalışmıyor. Yapılması gereken başka bir şey var mı?
Utpal - Ur En iyi Pal

Takma adı ekledikten sonra, çalışabilmesi için tarayıcı önbelleğini silmem gerekiyordu.
trees_are_great

Ve bu, DNS’nizin önceki TTL’sine bağlıdır.
Hardeep Singh

3

Example.com ve www.example.com için bir CNAME’nizin ardından bu nginx yapılandırması trafiği http’den https’e ve tüm www.example.com’un example.com’a yönlendirmesini sağlar

server { 

    listen  80 ;

    server_name  example.com, www.example.com;

    rewrite ^/(.*) https://example.com/$1 permanent;
}

server {  #  redirect www to normal domain

    listen       443  ssl ;

    server_name www.example.com;

    include /etc/nginx/myprojname/include/ssl;

    return 301 https://example.com$request_uri;
}

server {

    listen  443 ssl ;

    include /etc/nginx/myprojname/include/ssl;

    server_name example.com;

    include /etc/nginx/snippets/nginx_common_location_443;

    location / {

        proxy_pass http://127.0.0.1:3000/;
    }

    include /etc/nginx/myprojname/include/custom_server_include;
}

Gerçek sunucumun çalıştığı ve bağlantı noktası 3000'i dinliyorsa ... bu aynı zamanda TLS'mi de sonlandırıyor, ancak yalnızca ssl'den bahsediyoruz ... ... içerdiği dosyalardan saklanmış kutuyu sertleştirmek için benim nginx ayarlarım


-1

Yukarıda belirtildiği gibi, standart DNS ile mümkün değildir.

İşte kullandığım çözüm:

  • Statik web sitesi ile S3 kurulumu, www olmayan etki alanınıza yönlendiriliyor
  • S3'ünüze bir Cloudfront dağıtımı oluşturun (AWS tarafından otomatik tamamlamada önerilen değil, S3 alanını kullanarak)
  • Bir Rota Ekleyin 53 A CloudFront dağıtımına bir takma ad kaydedin

@Tomlar düzenlenen cevabı görüyor.
natanavra
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.