Mengubah catatan dan catatan CNAME

11

Saat ini saya menggunakan LAMPkonfigurasi untuk halaman halaman pendaratan saya, untuk aplikasi web, dan untuk API. Sekarang saya ingin membagi hal-hal ini menjadi beberapa Server Virtual (VS). Saya tidak yakin dengan pengaturan jaringan dan sebelum mengacaukan semua konfigurasi DNS saya, saya ingin memahami apakah saya akan merusak konfigurasi saya.

Laman landas di-host di second level domain(misalnya myurl.com), aplikasi web di-host di domain tingkat bawah app.myurl.com, dan api di api.myurl.com. Saya juga memiliki domain pratinjau:, preview.myurl.comdigunakan untuk pengujian.

Karena semuanya di-host di VS yang sama, saya saat ini memiliki juga empat folder yang berbeda ( landing, api, webapp, preview), yang bertindak sebagai "virtual host" untuk setiap subdomain.

Konfigurasi DNS saya terlihat seperti ini:

myurl.com.  A   300 123.123.123.123
www.myurl.com.  CNAME   300 myurl.com.
api.myurl.com.  CNAME   300 myurl.com.
app.myurl.com.  CNAME   300 myurl.com.
preview.myurl.com.  CNAME   300 myurl.com.

Untuk memulai, saya ingin mengubah data setiap entri CNAME ke IP aktual dari VS saat ini. Sehingga akan terlihat seperti ini:

myurl.com.  A   300 123.123.123.123
www.myurl.com.  CNAME   300 myurl.com.
api.myurl.com.  CNAME   300 123.123.123.123
app.myurl.com.  CNAME   300 123.123.123.123
preview.myurl.com.  CNAME   300 123.123.123.123

Maka idenya adalah untuk mengarahkan setiap subdomain ke VS yang tepat. Awalnya semua domain tingkat bawah (kecuali untuk www.) masih akan menunjuk ke VS saat ini, sedangkan domain tingkat kedua untuk halaman arahan ( Acatatan untuk myurl.com.) harus menunjuk ke yang baru IPuntuk VS baru.

Pertanyaan:

  1. Akan perubahan ini mempengaruhi cara di mana Apache Server saat ini mendistribusikan lalu lintas ke setiap subfolder (yaitu landing, api, webapp, preview)? Jika demikian, bahkan jika semua IPalamat tetap sama?
  2. Untuk menguji berbagai hal, dapatkah saya mulai dengan hanya mengubah datanilainya preview.myurl.com.tanpa mengambil risiko membahayakan sisanya?
  3. Setelah semua domain tingkat yang lebih rendah (misalnya api.myurl.com) arahkan ke IP dari VM, dapat saya arahkan Anilai myurl.com.untuk IP yang berbeda tanpa mengorbankan domain tingkat yang lebih rendah lainnya ( api, app, preview)?
mengenakan
sumber
2
Tanpa membaca lebih banyak dari pertanyaan Anda, Anda seharusnya tidak menggunakan catatan CNAME dengan alamat-ip tetapi menggunakan Acatatan:app.myurl.com. A 300 10.123.123.123
HBruijn
Saya akan melangkah lebih jauh dan mengatakan bahwa catatan CNAME harus menunjuk pada nama domain, dan tidak boleh alamat IP. Saya akan terkejut jika sistem manajemen DNS akan memungkinkan Anda untuk memasukkan alamat IP sebagai target catatan CNAME.
Dre,
2
@Dre Anda dapat memasukkan angka dalam RR CNAME yang terlihat seperti alamat IP, tetapi angka itu akan ditafsirkan sebagai nama domain yang tidak memenuhi syarat.
Michael Hampton

Jawaban:

12

Seperti disebutkan dalam komentar, Anda harus menggunakan catatan A bukannya catatan CNAME. Catatan CNAME tidak akan dapat menunjuk pada Alamat IP.

Kunci untuk membuat setiap situs berfungsi adalah menentukan ServerName dengan benar untuk setiap server virtual di konfigurasi Apache Anda.

Dre
sumber
Terima kasih, itu sangat membantu. Satu-satunya hal yang saya tidak yakin adalah sedikit tentang ServerName. Seperti apa rasanya bekerja dengan baik? Keraguan saya adalah, apakah ServerName entah bagaimana dipengaruhi oleh cara DNS memutuskan untuk VS tertentu?
don
1
Jika saya mengerti Anda dengan benar, ya. Servername adalah bagaimana Apache mengetahui VS mana untuk mengirimkan lalu lintas. Katakanlah Anda memiliki semua pengaturan A records di DNS Anda, semuanya menunjuk ke alamat 123.123.123.123. Saat Anda menjelajah ke myurl.com, permintaan Anda akan dikirim ke 123.123.123.123. Apache menerima permintaan tersebut dan menyadari bahwa ia memiliki beberapa situs web pada IP itu, sehingga Apache akan melihat lebih dekat pada permintaan yang Anda kirim dan menyadari bahwa peramban Anda mencari myurl.com. Apache akan mencari URL itu untuk mencocokkan dengan salah satu nilai Servername untuk setiap VS.
Dre
11

Gunakan Acatatan untuk menunjuk ke sub domain

myurl.com.  A   300 123.123.123.123
api.myurl.com.  A   300 123.123.123.123
app.myurl.com.  A   300 123.123.123.123
preview.myurl.com.  A   300 123.123.123.123
www.myurl.com.  CNAME   300 myurl.com.
Anthony Fornito
sumber