APACHE IP dan Nama Berdasarkan Hos Maya Maya dijelaskan

APACHE IP dan Nama Berdasarkan Hos Maya Maya dijelaskan

Dengan menggunakan tuan rumah maya kita boleh membuat httpd Pelayan menguruskan beberapa laman web. Kita boleh menggunakan kedua-dua IP dan tuan rumah maya berasaskan nama; Apakah perbezaan di antara mereka?

Bagaimana Apache memutuskan bagaimana tuan rumah maya
digunakan untuk memberi respons kepada permintaan pelanggan? Kami akan menjawab soalan -soalan ini dalam hal ini
artikel, terus membaca!

Dalam tutorial ini anda akan belajar:

  • Apakah perbezaan antara tuan rumah IP dan nama maya berasaskan nama
  • Apa itu Dengarkan arahan dan bagaimana ia digunakan
  • Bagaimana Apache Memutuskan Hos Maya Apa Yang Harus Digunakan Untuk Menanggapi Permintaan
APACHE IP dan Nama Berdasarkan Hos Maya Maya dijelaskan

Keperluan perisian dan konvensyen yang digunakan

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Pengedaran bebas
Perisian Tiada perisian khusus diperlukan
Yang lain Kebiasaan dengan pelayan web Apache dan konsep asas HTTP
Konvensyen # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak

Arahan "Dengar"

Perkara pertama yang perlu dipertimbangkan, adalah Dengarkan arahan. Arahan ini wajib, dan diperlukan untuk memberitahu httpd pelayan ke apa IP-port gabungan ia harus mendengar permintaan. Secara lalai pelayan biasanya dikonfigurasikan untuk mendengar setiap Ip di pelabuhan 80.

Dalam /etc/httpd/conf/httpd.Conf yang utama httpd Fail Konfigurasi di Fedora/Rhel/Centos Systems, pada baris 45, Sebagai contoh, kita boleh membaca:

Dengar 80 

Seperti yang anda lihat, hanya pelabuhan yang ditentukan dengan Dengarkan arahan. Akibatnya, pelayan akan mendengar port itu di semua alamat IP mesin. Sekiranya alamat ditentukan, sebaliknya, pelayan hanya akan mendengar pada yang disediakan IP: port gabungan.

The Dengarkan Arahan dapat diulang beberapa kali, oleh itu sangat mudah untuk menentukan pelbagai kombinasi.

Pencocokan VirtualHost



Sebaik sahaja pelayan dikonfigurasikan untuk mendengar alamat atau port tertentu, Apache mesti memutuskan apa yang VirtualHost harus digunakan untuk memenuhi permintaan klien. Sebelum melihat langkah -langkah yang terlibat dalam keputusan ini, mari kita lihat secara ringkas bagaimana tuan rumah maya ditakrifkan.

Arahan yang digunakan untuk membuat dan mengkonfigurasi tuan rumah maya, adalah Virtualhost; Ia menggunakan sintaks berikut:

Seperti yang dapat kita perhatikan, masing -masing Virtualhost Arahan memerlukan addr; ia boleh ditentukan sebagai:

  • Alamat IP, sama ada IPv4 atau IPv6 (alamat IPv6 mesti disertakan dalam kurungan persegi);
  • Nama domain yang berkelayakan sepenuhnya;
  • A * Wildcard (ini akan sepadan dengan semua alamat)

Semua parameter dan konfigurasi yang dibuat di dalam Tags, adalah "tempatan" dengan tuan rumah maya tertentu itu. Berikut adalah contoh konfigurasi tuan rumah maya:

 ServerName: www.ContohOne.com Documentroot "/var/www/exampleOne"  

Atau, menggunakan kad liar:

 ServerName: www.ContohOne.com Documentroot "/var/www/exampleOne"  

Perkara pertama yang dilakukan oleh pelayan adalah untuk menganalisis, mengikut urutan, setiap tuan rumah maya, dan periksa sama ada mereka addr sepadan dengan permintaan. Penting untuk melihat bahawa alamat IP yang ditakrifkan mempunyai keutamaan ke atas kad liar, yang dianggap hanya jika tidak ada padanan tepat yang dijumpai. Pada ketika ini kita boleh mempunyai tiga kes:

  1. Hanya satu tuan rumah maya yang sepadan dengan permintaan;
  2. Tiada tuan rumah maya sepadan dengan permintaan;
  3. Pelbagai tuan rumah maya sepadan dengan permintaan;

Resolusi kes pertama adalah mudah: jika permintaan klien hanya sepadan dengan satu hos maya tertentu, httpd Pelayan bertindak balas dengan melayani kandungan yang berkaitan dengan tuan rumah maya itu. Dalam kes ini kita bercakap Berasaskan IP Tuan rumah maya.

Kes kedua juga mudah dijelaskan: jika tiada konfigurasi hos maya memenuhi permintaan klien, konfigurasi pelayan lalai digunakan untuk menjawab permintaan. Untuk konfigurasi lalai, kami berhasrat semuanya di luar .

Dalam kes ketiga, pelbagai tuan rumah maya sepadan dengan permintaan pelanggan. Apabila ini berlaku, pelayan mesti mendiskriminasi bergantung kepada beberapa faktor lain selain daripada IP: port Gabungan: Skim dan nama hos yang digunakan oleh tuan rumah maya untuk mengenal pasti dirinya sendiri.



Tuan rumah maya berasaskan nama

Pelayan meneliti setiap hos maya yang sepadan mengikut definisi dan memilih mana yang harus digunakan bergantung pada yang diminta nama tuan rumah. Ini dipanggil tuan rumah maya "berasaskan nama". Hos maya pertama yang sepadan dengan permintaan yang digunakan. Sekiranya tidak ada perlawanan, pelayan menggunakan Pertama ditakrifkan Virtualhost sebagai sandaran.

Kelebihan utama menggunakan tuan rumah maya berasaskan nama, adalah bahawa kita boleh menjalankan beberapa laman web di alamat IP yang sama. Mari lihat contoh VirtualHost berasaskan nama:

 ServerName www.ServerOne.com Documentroot/var/www/ServerOne  

Sejak *: 80 digunakan sebagai alamat, tuan rumah maya akan sesuai dengan setiap permintaan yang dibuat di port 80. Apa yang membuat perbezaan dalam kes ini adalah Nama pelayan arahan. Sekiranya arahan ini ditinggalkan, pelayan akan cuba mendapatkan nama domain yang berkelayakan (FQDN) berdasarkan nama hos sistem operasi.

Pelayan memeriksa jika nama hos yang dinyatakan dalam permintaan sepadan dengan yang dikonfigurasikan melalui Nama pelayan arahan, dalam kes ini www.ServerOne.com. Sekiranya ia berlaku, kandungan yang ditentukan dengan Documentroot Arahan yang disampaikan kepada pelanggan.

Di dalam konfigurasi tuan rumah maya, juga mungkin untuk menentukan satu atau lebih alias, untuk memadankan pelbagai nama tuan rumah. Ini dicapai dengan menggunakan Serveralias Arahan:

 ServerName www.ServerOne.com serveralias *.ServerOne.com Documentroot/var/www/ServerOne  


Dalam konfigurasi di atas, kami menambah a Serveralias arahan menggunakan kad liar. Konfigurasi kini akan sepadan dengan setiap subdomain ServerOne.com.

Tuan rumah maya berasaskan IP

Tuan rumah maya berasaskan IP, seperti yang telah kita lihat, pada dasarnya adalah apa yang httpd Penggunaan pelayan secara lalai. Apabila menggunakannya, keupayaan untuk melayani beberapa laman web adalah berdasarkan permintaan pelanggan IP: port gabungan.

Ia dengan sendirinya, untuk menggunakan jenis tuan rumah maya ini, mesin mesti mempunyai banyak alamat rangkaian. Ini tidak bermakna bahawa pelbagai antara muka rangkaian fizikal diperlukan, kerana pelbagai alamat boleh diberikan kepada antara muka yang sama (ini dipanggil IP aliasing), dan antara muka maya juga boleh dibuat (ingin tahu cara membuat antara muka rangkaian maya di Linux?

Lihat artikel kami mengenai mewujudkan antara muka rangkaian maya di Linux. Berikut adalah dua contoh tuan rumah maya berasaskan IP:

Dengar 8080 ServerName: www.ContohOne.com Documentroot "/var/www/exampleOne" ServerName www.Contohnya.com Documentroot "/var/www/exampletwo"  

Di atas kita dapat melihat bahawa walaupun kedua -dua tuan rumah maya mempunyai alamat IP yang sama, port yang berbeza ditentukan dalam contoh kedua: 8080. Agar pelayan dapat mendengar port itu, kami menggunakan Dengar 8080 arahan.

Kesimpulan

Dalam tutorial ini kita melihat bagaimana tuan rumah maya Apache berfungsi. Kami mempelajari perbezaan antara IP dan tuan rumah maya berasaskan nama, dan bagaimana pelayan menentukan konfigurasi apa yang harus digunakan untuk bertindak balas terhadap permintaan klien. Tolong, lihat memasang artikel Apache jika anda ingin mengetahui lebih lanjut mengenai cara mengkonfigurasi Host Maya Apache.

Tutorial Linux Berkaitan:

  • Cara Memindahkan Apache ke Nginx dengan Menukar Virtualhosts ke ..
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Menguasai Gelung Skrip Bash
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Cara Menyiapkan Pelayan OpenVPN di Ubuntu 20.04
  • Panduan Penyelesaian Masalah Umum GNU/Linux untuk Pemula
  • Cara membuat timbunan lampu berasaskan Docker menggunakan Docker pada ..
  • Buat pengalihan dan tulis semula peraturan ke dalam .Htaccess di Apache ..
  • Cara menguruskan tuan rumah maya yang dinamik dengan Apache dan ..
  • Cara Bekerja Dengan API Rest WooCommerce dengan Python