Membuat host virtual Apache dengan mengaktifkan/menonaktifkan opsi Vhosts di Rhel/Centos 7.0

Membuat host virtual Apache dengan mengaktifkan/menonaktifkan opsi Vhosts di Rhel/Centos 7.0

Hosting virtual memungkinkan Apache Weberver untuk melayani konten yang berbeda berdasarkan alamat IP, nama host atau nomor port yang digunakan. Panduan ini akan menggunakan a Debian Seperti pendekatan yang memungkinkan dan mengelola host virtual di Red Hat Enterprise Linux/Centos 7.0 dengan membuat dua direktori di /etc/httpd/ jalur, yang akan membuat semua konfigurasi file situs web yang diaktifkan dan dinonaktifkan - situs-tersedia Dan Situs-Enabled, dan dua jenis skrip untuk bertindak sebagai perintah, satu yang memungkinkan dan lainnya yang menonaktifkan host virtual tertentu - a2ensite Dan A2DISSITE. Pendekatan ini memiliki beberapa keuntungan karena Anda harus mengacaukan file konfigurasi httpd dan setiap host virtual memiliki file konfigurasi sendiri yang dapat ditemukan di satu lokasi - host yang diaktifkan hanyalah symlink - yang membuat proses mengaktifkan, menonaktifkan, atau membuat atau menghapus mereka sangat mudah dikelola.

Apache Virtual Hosting dengan opsi mengaktifkan/menonaktifkan

Persyaratan

  1. Instalasi Dasar Lampu di Rhel/Centos 7.0

Buat dan Kelola Apache Virtual Host di Rhel/Centos 7

1. Untuk memulai, mulailah dengan masuk /etc/httpd/ Path, Buat Direktori yang tersedia untuk Situs dan Situs dan Edit Apache httpd.conf file untuk menerapkan lokasi situs web yang baru diaktifkan.

# CD/etc/httpd/ # Situs MKDIR yang tersedia-di-level # nano conf/httpd.conf
Buat direktori Apache Vhost

2. Pada httpd.conf File Tambahkan baris arahan berikut di bagian bawah file, yang akan membuat Apache membaca dan menguraikan semua file yang terletak di /etc/httpd/situs-diable/ berakhir .conf perpanjangan.

Termasuk situs yang diaktifkan/*.conf
Aktifkan direktori Apache

3. Pada langkah berikutnya, buat host virtual baru di situs-tersedia Lokasi Menggunakan Nama Deskriptif - Dalam hal ini saya telah menggunakan Rheltest.lan.conf - dan gunakan file berikut sebagai templat.

# nano/etc/httpd/situs-tersedia/rheltest.lan.conf

Gunakan konfigurasi ini sebagai panduan.

 Servername Rheltest.LAN Documentroot "/var/www/rheltest.LAN "Indeks Opsi FollowSymlinks Multiviews # Allowoverride Mengontrol Arahan Apa yang Dapat Ditempatkan .file htaccess. AlloVerRide All # Controls yang bisa mendapatkan barang dari urutan file server ini Izinkan, tolak izinkan dari semua serverenvironment apache apache errorlog/var/log/httpd/rheltest.LAN-ERROR.Log CustomLog/var/log/httpd/rheltest.LAN-AKSES.log digabungkan 
Buat Apache Vhosts

4. Jika Anda berubah Root document Lokasi di host virtual Anda dari default /var/www/html ke jalur lain, pastikan Anda juga membuat jalur ini.

# mkdir -p/var/www/rheltest.lan

CATATAN: Juga memastikan bahwa servername host adalah catatan DNS yang valid atau ditambahkan ke file host mesin lokal Anda, dari mana Anda berencana untuk mengunjungi situs web.

5. Sekarang saatnya untuk membuat a2ensite Dan A2DISSITE skrip bash pada jalur sistem yang dapat dieksekusi - dalam hal ini adalah /usr/lokal/bin/ - Tetapi
Anda dapat menggunakan jalur apa pun yang dapat dieksekusi itu $ Path output variabel sistem.

Buat skrip A2ensite

Buat file berikut dengan editor pilihan Anda.

# nano/usr/lokal/bin/a2ensit

Tambahkan skrip berikut ke dalamnya.

#!/bin/bash jika tes -d/etc/httpd/situs -tersedia && test -d/etc/httpd/situs -diable; lalu echo "----------------------------------------------- "Lain mkdir/etc/httpd/situs-tersedia mkdir/etc/httpd/situs-mendukung fi tersedia =/etc/httpd/situs-tersedia/$ 1.conf enabled =/etc/httpd/Situs-Enabled/situs = "ls/etc/httpd/situs-tersedia/" jika ["$#" != "1"]; Kemudian echo "Gunakan skrip: a2ensite virtual_site" echo -e "\ navailable virtual hosts: \ n $ situs" keluar 0 lain jika tes -e $ tersedia; lalu sudo ln -s $ avail $ enabled else echo -e "$ avail virtual host tidak ada! Harap buat satu!\ n $ situs "Keluar 0 fi jika tes -e $ diaktifkan/$ 1.conf; lalu gema "sukses!! Sekarang restart server apache: sudo systemctl restart httpd "else echo -e" virtual host $ avail tidak ada!\ nPlease Lihat host virtual yang tersedia: \ n $ situs "Keluar 0 fi fi
Buat skrip A2ensite
Buat skrip A2Dissite

Buat file berikut dengan editor pilihan Anda.

# nano/usr/local/bin/a2dissite

Tambahkan seluruh skrip berikut ke file.

#!/bin/bash avail =/etc/httpd/Situs-Enabled/$ 1.conf enabled =/etc/httpd/situs yang diaktifkan situs = "ls/etc/httpd/situs-diable/" if ["$#" != "1"]; Kemudian echo "Gunakan skrip: a2dissite virtual_site" echo -e "\ navailable virtual hosts: \ n $ situs" keluar 0 lain jika tes -e $ tersedia; Maka sudo rm $ avele lain echo -e "$ avail virtual host tidak ada! Keluar!"Keluar 0 fi jika tes -e $ diaktifkan/$ 1.conf; lalu gema "kesalahan!! Tidak dapat menghapus $ tersedia host virtual!Keberhasilan "lain echo -e"! $ tersedia telah dihapus!\ nPlease restart apache: sudo systemctl restart httpd "keluar 0 fi fi
Buat skrip A2Dissite

6. Setelah kedua file skrip dibuat, pastikan mereka dapat dieksekusi dan mulai menggunakannya memungkinkan atau cacat Host virtual dengan menambahkan nama vhost sebagai parameter perintah.

# chmod +x/usr/local/bin/a2* # a2ensite vhost_name # a2disite vhost_name

7. Untuk mengujinya, aktifkan host virtual yang dibuat sebelumnya, restart layanan Apache dan browser langsung ke host virtual baru - dalam hal ini http: // rheltest.lan.

# a2ensite rheltest.LAN # SystemCTL restart httpd
Aktifkan Apache VirtualHost Verifikasi Apache VirtualHost

Itu dia! Sekarang Anda bisa menggunakan a2eniste Dan A2DISSITE skrip bash sebagai perintah sistem untuk mengelola file apache vhosts di rhel/centos 7.0.