Menghosting beberapa website pada satu instans ECS merupakan cara hemat biaya untuk mengelola keberadaan web Anda. Pendekatan ini menyederhanakan tugas seperti pembaruan perangkat lunak, konfigurasi keamanan, dan pencadangan data, serta memungkinkan alokasi sumber daya secara fleksibel sesuai kebutuhan masing-masing situs. Topik ini menjelaskan cara menggunakan Nginx untuk menghosting beberapa website pada instans ECS Linux.
Prasyarat
Anda telah membuat instans ECS dengan Alamat IP publik dan men-deploy stack LNMP. Untuk informasi lebih lanjut, lihat Deploy an LNMP stack atau (To be determined) Deploy an LNMP stack using Docker.
Tutorial ini menyediakan solusi satu klik untuk men-deploy lingkungan Nginx guna menghosting beberapa website. Anda dapat menjalankan kode berikut untuk langsung men-deploy lingkungan tersebut. Run with one click
Buat website uji coba
-
Hubungkan secara remote ke instans ECS tempat stack LNMP dideploy.
Untuk petunjuk koneksi, lihat Connect to a Linux instance using Workbench.
-
Jalankan perintah berikut untuk masuk ke direktori root situs web yang telah dikonfigurasi.
cd /usr/share/nginx/html -
Jalankan perintah berikut untuk membuat dua direktori bagi website uji coba.
Direktori ini akan menyimpan kode proyek (konten website).
sudo mkdir Testpage-1 sudo mkdir Testpage-2 -
Konfigurasikan website Testpage-1.
-
Jalankan perintah berikut untuk masuk ke direktori Testpage-1.
cd /usr/share/nginx/html/Testpage-1/ -
Jalankan perintah berikut untuk membuat dan mengedit file
index.html.sudo vim index.html -
Tekan
iuntuk masuk ke mode insert dan tambahkan konten uji coba berikut.Test page 1Setelah selesai mengedit, tekan tombol
Esc, ketik:wq, lalu tekan Enter untuk menyimpan file dan keluar.
-
-
Konfigurasikan website
Testpage-2.-
Jalankan perintah berikut untuk masuk ke direktori
Testpage-2.cd /usr/share/nginx/html/Testpage-2/ -
Jalankan perintah berikut untuk membuat dan mengedit file
index.html.sudo vim index.html -
Tekan
iuntuk masuk ke mode insert dan tambahkan konten uji coba berikut.Test page 2Setelah selesai mengedit, tekan tombol
Esc, ketik:wq, lalu tekan Enter untuk menyimpan file dan keluar.
-
Konfigurasi Nginx
-
Jalankan perintah berikut untuk melihat file konfigurasi
nginx.conf.cat /etc/nginx/nginx.confPada blok
http{}, temukan direktifinclude.Pada contoh ini, konfigurasi
include /etc/nginx/conf.d/*.conf;menunjukkan bahwa Nginx mengambil informasi situs dari semua file.confdi path yang ditentukan. Barisinclude /etc/nginx/conf.d/*.conf;adalah baris konfigurasiincludeyang perlu diperhatikan, dan digunakan untuk memuat file konfigurasi modular dari direktori /etc/nginx/conf.d.http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf; server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; } } -
Jalankan perintah berikut untuk masuk ke direktori
/etc/nginx/conf.d.cd /etc/nginx/conf.d -
Buat dan konfigurasikan file konfigurasi Nginx untuk website
Testpage-1.-
Jalankan perintah berikut untuk membuat dan mengedit file konfigurasi.
sudo vim Testpage1.conf -
Tekan
iuntuk masuk ke mode insert dan tambahkan konten berikut.Ganti parameter nama domain server dan path proyek sesuai yang ditunjukkan dalam komentar.
server { listen 80; server_name testpage1.com; # Nama domain uji coba. Ganti dengan nama domain server aktual Anda. #charset koi8-r; access_log /var/log/nginx/b.access.log main; location / { root /usr/share/nginx/html/Testpage-1; # Path ke direktori root situs ini. index index.html index.htm; } #error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }Setelah selesai mengedit, tekan tombol
Esc, ketik:wq, lalu tekan Enter untuk menyimpan file dan keluar.
-
-
Buat dan konfigurasikan file konfigurasi Nginx untuk website
Testpage-2.-
Jalankan perintah berikut untuk membuat dan mengedit file konfigurasi.
sudo vim Testpage2.conf -
Tekan
iuntuk masuk ke mode insert dan tambahkan konten berikut.Ganti parameter nama domain server dan path proyek sesuai yang ditunjukkan dalam komentar.
server { listen 80; server_name testpage2.com; # Nama domain uji coba. Ganti dengan nama domain server aktual Anda. #charset koi8-r; access_log /var/log/nginx/b.access.log main; location / { root /usr/share/nginx/html/Testpage-2; # Path ke direktori root situs ini. index index.html index.htm; } #error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }Setelah selesai mengedit, tekan tombol
Esc, ketik:wq, lalu tekan Enter untuk menyimpan file dan keluar.
-
-
Jalankan perintah berikut untuk restart layanan Nginx.
sudo systemctl restart nginx
Verifikasi hasil
Pada mesin lokal Anda, edit file hosts untuk memetakan nama domain uji coba ke Alamat IP publik instans ECS Anda. Setelah menyimpan file tersebut, Anda dapat memverifikasi website melalui browser.
-
Kunjungi
http://testpage1.comuntuk melihat konten situsTestpage-1.Halaman menampilkan Test page 1, yang menunjukkan bahwa website Testpage-1 telah berhasil dideploy dan dapat diakses.
-
Kunjungi
http://testpage2.comuntuk melihat konten situsTestpage-2.Halaman menampilkan Test page 2, yang menunjukkan bahwa website Testpage-2 telah berhasil dideploy dan dapat diakses.
Untuk proyek Anda sendiri, pastikan direktif root pada file konfigurasi setiap situs mengarah ke direktori proyek yang benar.
Langkah selanjutnya
Agar website Anda dapat diakses publik, kami merekomendasikan penggunaan nama domain untuk meningkatkan aksesibilitas dan keamanan. Jika Anda perlu mendaftarkan nama domain atau sudah memilikinya, lanjutkan dengan langkah-langkah berikut.
-
Daftarkan nama domain.
Untuk petunjuknya, lihat Domain name registration.
-
Ajukan Pendaftaran ICP.
Jika nama domain Anda mengarah ke website yang di-hosting pada server Alibaba Cloud di Tiongkok daratan, Anda harus mengajukan Pendaftaran ICP. Untuk petunjuknya, lihat ICP filing process.
-
Konfigurasikan resolusi nama domain.
Resolusi nama domain diperlukan agar website Anda dapat diakses melalui nama domain-nya. Untuk mengarahkan nama domain Anda ke Alamat IP publik instans, lihat Add a website resolution record.
Dokumentasi terkait
Untuk mempelajari cara menghosting beberapa website pada instans Windows, lihat Configure IIS to Host Multiple Websites.