Host virtual (vhost) digunakan untuk melayani beberapa domain dengan menggunakan satu server atau alamat Internet Protocol (IP). Halaman yang berbeda ditampilkan sesuai dengan apa yang telah diatur dalam file host untuk situs tertentu. Anda dapat menambahkan host virtual sebanyak yang Anda butuhkan ke server Anda. Artikel ini memberikan instruksi untuk membuat vhost di CentOS® secara khusus.
Catatan: Ganti semua instance domain.com
dalam artikel ini dengan nama domain situs Anda.
Prasyarat konfigurasi Vhost untuk CentOS
Artikel ini mengasumsikan bahwa Anda telah mengonfigurasi Layanan Nama Domain (DNS) untuk domain Anda agar mengarah ke situs Anda atau bahwa Anda menggunakan file host lokal di komputer Anda untuk mengarahkan domain ke server untuk tujuan pengujian.
Server Anda harus menginstal Apache® untuk mengonfigurasi vhosts. Instal Apache dengan menjalankan perintah berikut:
sudo yum install httpd
Catatan: Pastikan firewall di server Anda dikonfigurasi untuk mengizinkan lalu lintas HTTP di port 80.
Buat direktori vhost di CentOS
-
Buat direktori baru dengan menggunakan perintah berikut:
sudo mkdir -p /var/www/vhosts/domain.com/public_html
Direktori ini digunakan untuk menyimpan konten web untuk situs Anda. Ini dikenal sebagai Akar Dokumen lokasi di Apache
vhost
berkas konfigurasi. Menggunakan-p
otomatis menambahkan induk direktori baru Anda. -
Atur izin yang diperlukan pada direktori baru dengan menggunakan perintah berikut:
sudo chown -R username:vhostuser /var/www/vhosts/domain.com/public_html
Catatan: Ganti vhostuser
di username:vhostuser
dengan pengguna yang seharusnya memiliki akses ke direktori baru.
Berikan akses baca ke semua orang untuk file dalam direktori vhosts Anda dengan menggunakan yang berikut:
sudo chmod -R 755 /var/www/vhosts/
Konfigurasikan file host virtual
-
Buka httpd.conf file di
vi
editor teks dengan menggunakan perintah berikut:sudo vi /etc/httpd/conf/httpd.conf
-
Masukkan baris berikut di akhir file:
Include vhost.d/*.conf
Tindakan ini mengatur Apache untuk membaca semua file yang diakhiri dengan .conf dalam /etc/httpd/vhost.d direktori.
-
Simpan dan keluar dari file konfigurasi.
-
Buat direktori untuk file konfigurasi vhost dengan menggunakan perintah berikut:
sudo mkdir /etc/httpd/vhost.d/
-
Buat template vhost dari mana Anda dapat membuat host virtual masa depan dengan menggunakan perintah berikut:
touch /etc/httpd/vhost.d/default.template
-
Buka default.template file di
vi
dengan menggunakan perintah berikut:vi /etc/httpd/vhost.d/default.template
-
Masukkan kode berikut ke dalam /etc/httpd/vhost.d/default.template berkas:
<VirtualHost *:80> ServerName domain.com ServerAlias www.domain.com DocumentRoot /var/www/vhosts/domain.com/public_html <Directory /var/www/vhosts/domain.com/public_html> Options Indexes FollowSymLinks MultiViews AllowOverride All </Directory> CustomLog /var/log/httpd/domain.com-access.log combined ErrorLog /var/log/httpd/domain.com-error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn </VirtualHost> #<VirtualHost _default_:443> # ServerName example.com # DocumentRoot /var/www/vhosts/domain.com/public_html # <Directory /var/www/vhosts/domain.com/public_html> # Options Indexes FollowSymLinks MultiViews # AllowOverride All # </Directory> # CustomLog /var/log/httpd/example.com-ssl-access.log combined # ErrorLog /var/log/httpd/example.com-ssl-error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. # LogLevel warn # SSLEngine on # SSLCertificateFile /etc/ssl/certs/domain.crt # SSLCertificateKeyFile /etc/ssl/certs/domain.key #</VirtualHost>
-
Simpan perubahan ke file dan keluar dari
vi
.
Buat file vhost dan mulai ulang layanan Apache
-
Buat file vhost di dalam /etc/httpd/vhost.d direktori dengan menggunakan perintah berikut:
sudo cp /etc/httpd/vhost.d/default.template /etc/httpd/vhost.d/domain.com.conf
-
Buka domain.com.conf file di
vi
dengan menggunakan perintah berikut:sudo vi /etc/httpd/vhost.d/domain.com.conf
-
Simpan perubahan ke file dan keluar dari
vi
. -
Restart Apache dengan menjalankan perintah berikut:
sudo service httpd restart
Anda menerima pesan berikut:
Stopping httpd: [OK] Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 0000:0000:0000:0000:0000:0000:0000:0000 for ServerName [OK]
Ini adalah peringatan default yang dapat Anda abaikan.
Host virtual Anda sekarang telah disiapkan dan siap digunakan. Anda harus mengunggah konten web ke DocumentRoot direktori yang telah Anda buat di server agar konten disajikan saat Anda menavigasi ke nama domain menggunakan browser.