Redirect permintaan non-www ke www di Amazon Route 53

44

Saya ingin mengalihkan semua permintaan dari example.comke www.example.com.

Lebih disukai, ini harus terjadi pada tingkat DNS. Saya mencoba menggunakan catatan PTR, tapi itu gagal, mengembalikan 404.

wwww.example.com adalah ALIAS untuk Penyeimbang Beban Elastis.

Apa cara paling sederhana untuk mencapai ini?

Flavian
sumber
Apa yang Anda coba dengan catatan PTR? Saya penasaran.
TRiG
@flavian poster itu meminta penulisan ulang DNS, bukan penulisan ulang URL, dan dia secara khusus mengatakan bahwa dia tidak peduli bagaimana rupa URL itu.
pauska
4
@flavian, demi, Anda mengatakan ingin melakukan pengalihan dalam DNS. Jawaban saya menjelaskan bagaimana melakukannya dalam DNS. Jika Anda ingin mengarahkan ulang URL maka Anda perlu menulis ulang URL. Itu tidak ada hubungannya dengan DNS.
pauska
Apakah ada alasan khusus untuk melakukan itu? Saya akan melakukannya sebaliknya .
nyuszika7h
SAN di EV SSL.
Flavian

Jawaban:

50

Jika Anda sudah menggunakan Rute 53, Anda dapat menggunakan alias "rekam" milik mereka untuk menyelesaikan masalah ini. Dengan DNS standar, Anda tidak dapat melakukan ini sama sekali dan Anda harus memiliki situs web mengirim pengalihan 301. Tentu saja, Anda masih perlu mengirim pengalihan 301 atau berurusan dengan kenyataan bahwa beberapa permintaan akan masuk tanpa www (meskipun Anda harus mengirim 301 untuk alasan SEO).

Mungkin cara termudah untuk melakukan ini adalah menyiapkan ember S3 dengan nama domain polos dan mengonfigurasi properti ember untuk mengalihkan dari example.com ke www.example.com, lalu di Route 53 buat alias untuk yang telanjang itu. nama domain yang menunjuk ke ember S3 itu.

Dari Komentar

Untuk meningkatkan jawabannya, inilah yang kami lakukan agar ini berfungsi:

  • Siapkan ember - tidak peduli apa namanya dan harus mengizinkan publik.
  • Dalam ember, klik properti dan klik hosting situs web statis. Klik redirect semua permintaan ke nama host lain dan masukkan situs yang Anda inginkan lalu lintas.
  • Salin titik akhir nama ember dan pergi ke zona yang dihosting di konsol Route53 dan tambahkan CNAME dengan Alias ​​Tidak ke url tempat Anda perlu diarahkan dan tempelkan titik akhir ember sebagai nilainya.
Michael Hampton
sumber
@ michael-hampton benar saya jika saya salah tetapi ember S3 hanya mengalihkan untuk nama domain telanjang tanpa jalur, kan? Saya menambahkan bucket S3 dengan benar untuk domain saya, tetapi hanya mengarahkan ulang domain telanjang, dan tidak mengarahkan apa pun yang memiliki jalur. Saya kira mod menulis ulang adalah cara untuk pergi?
John Harding
@ JohnHarding, aku tak tahu. Saya tidak menggunakan sebagian besar layanan Amazon AWS lagi, termasuk S3.
Michael Hampton
2
Untuk meningkatkan jawaban, inilah yang kami lakukan agar ini berfungsi: - Menyiapkan ember - tidak peduli apa namanya dan harus mengizinkan publik. - Dalam ember, klik properti dan klik hosting situs web statis. Klik redirect semua permintaan ke nama host lain dan masukkan situs yang Anda inginkan lalu lintas. - Salin titik akhir nama ember dan pergi ke zona yang dihosting di konsol Route53 dan tambahkan CNAME dengan Alias ​​Tidak ke url tempat Anda harus diarahkan kembali dan tempelkan titik akhir ember sebagai nilainya.
NathanQ
4
Ini hanya berfungsi untuk permintaan http, karena S3 tidak mendukung https. Permintaan untuk https://example.comakan gagal.
Harry King
untuk membuat https://example.comredirect kepada https://www.example.comAnda sedih perlu mensetup cloudfront lain menunjuk pada ember dengan http redirect statis ke www.example.com. Perlu disebutkan bahwa Anda perlu menambahkan domain puncak ke CNAMEbidang dalam konfigurasi
cloudfront Anda
6

Untuk alias DNS, Anda hanya perlu menambahkan catatan CNAME atau A dalam DNS. Lihat jawaban saya di sini: Bagaimana cara mengarahkan www ke non-www di Route53?

Untuk penulisan ulang URL (seperti dalam mengarahkan ulang klien ke alamat lain) maka Anda memerlukan beberapa bentuk logika penulisan ulang URL yang dilakukan di server web. Ada beberapa cara untuk melakukan ini, dan itu tergantung pada jenis server web yang Anda gunakan. Yang paling populer adalah menggunakan mod_rewrite dengan apache. Situs ini penuh dengan pertanyaan mod_rewrite, beberapa pencarian harus mendapatkan apa yang Anda inginkan.

pauska
sumber
Saya menggunakan CNAME pada bind9 srv internal saya tepat satu jam yang lalu, tetapi hasilnya tidak sama dengan menulis ulang url. Saat memasukkan CNAME ini ke bilah alamat peramban, Anda mendapatkan URL itu dengan tepat, URL itu tidak berubah ke url yang ditunjuk CNAME. Saya menggunakan apache mod_rewrite sekarang, mengirimkan 301 ketika tidak ada www. awalan.
Kitet
3
Jawaban yang Anda tautkan adalah untuk mengirim www.domain.comke domain.com. Pertanyaan ini tentang yang sebaliknya. Apakah solusi Anda menggunakan CNAMEatau Acatatan kerja untuk mengirim domain.comke www.domain.com?
Carl G
4

Anda dapat melakukan ini menggunakan bantuan ember s3. Langkah-langkah disisipkan di bawah ini:

Langkah 1. Buat ember s3.

Langkah 2. Jadikan ember sebagai hosting situs web Statis dengan pengalihan.

Langkah 3. Edit entri AWS Route 53 untuk domain non www.

A - Alamat IPv4 -> Alias ​​Ya -> Target Alias ​​(Pilih titik akhir bucket s3 dari drop down).

Langkah 4. Simpan catatan yang ditetapkan.

Arunlal Ashok
sumber
0

AWS Route53 saat ini tidak memberikan dukungan untuk mengarahkan kembali apa yang saat ini dikenal sebagai catatan APEX (domain root) ke nama domain lain, meskipun mereka bekerja pada sebuah solusi.

Saya telah mencapai ini dengan membuat catatan A (alias) yang menunjukkan domain root saya (devopsfolks.com) ke alamat IP dari solusi WP yang saya host ... Dan jawabannya adalah ya, jika IP berubah maka Anda akan perlu untuk mengubah alias. Namun penyedia menjamin saya bahwa IP diperbaiki kecuali mereka perlu melakukan semacam pemulihan bencana dan mengubah perangkat keras dalam hal ini mereka akan menempatkan proxy bersama untuk melakukan pengalihan sementara memberi pelanggan 45 hari untuk mengubah pemetaan mereka.

Marco Tedone
sumber
5
A tidak berarti alias, itu berarti alamat. Dan Anda dapat dengan mudah melakukan pengalihan dengan Rute 53 menggunakan metode bucket S3 yang ditunjukkan di atas.
Michael Hampton
"Mereka sedang mengerjakan solusi" apakah ada pembaruan tentang ini?
Tom