APACHE IP dan Nama Berdasarkan Hos Maya Maya dijelaskan
- 2442
- 754
- Chris Little I
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
Keperluan perisian dan konvensyen yang digunakan
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:
- Hanya satu tuan rumah maya yang sepadan dengan permintaan;
- Tiada tuan rumah maya sepadan dengan permintaan;
- 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