GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengatur Blok Server Nginx Di Ubuntu 18.04 LTS

Dalam panduan kami sebelumnya, kami membahas cara mengonfigurasi host virtual Apache di Ubuntu 18.04 LTS . Hari ini, dalam panduan ini, kita akan belajar mengatur blok server Nginx di Ubuntu 18.04. Blok Server mirip dengan host virtual di Apache yang membantu Anda meng-host beberapa situs web/domain di satu server. Alamat IP kotak uji saya adalah 192.168.225.24 dan nama host adalah ubuntuserver .

Mengatur Blok Server Nginx Di Ubuntu 18.04 LTS

Pastikan Anda telah memperbarui sistem Ubuntu Anda ke versi terbaru.

$ sudo apt-get update

1. Instal server web Nginx 

Untuk menginstal server web Nginx di Ubuntu, jalankan:

$ sudo apt-get install nginx

Setelah Nginx diinstal, uji apakah berfungsi atau tidak dengan menjelajahi halaman pengujian nginx di browser.

Buka browser web Anda dan arahkan ke http://IP_Address atau http://localhost . Anda akan melihat halaman seperti di bawah ini.

Bagus! Server web Nginx aktif dan berfungsi!!

2. Buat direktori web untuk setiap host

Saya akan membuat dua blok Server, yaitu ostechnix1.lan dan ostechnix2.lan .

Mari kita buat direktori untuk blok server pertama ostechnix1.lan. Direktori ini diperlukan untuk menyimpan data blok server kami.

Untuk melakukannya, masukkan:

$ sudo mkdir -p /var/www/html/ostechnix1.lan/public_html

Demikian juga, buat direktori untuk blok server kedua ostechnix2.lan seperti yang ditunjukkan di bawah ini.

$ sudo mkdir -p /var/www/html/ostechnix2.lan/public_html

Dua direktori di atas dimiliki oleh pengguna root. Kami perlu mengubah kepemilikan menjadi pengguna biasa.

Untuk melakukannya, jalankan:

$ sudo chown -R $USER:$USER /var/www/html/ostechnix1.lan/public_html
$ sudo chown -R $USER:$USER /var/www/html/ostechnix2.lan/public_html

Di sini, $USER merujuk pengguna yang saat ini masuk.

Selanjutnya, atur izin baca ke direktori root Nginx yaitu /var/www/html/ menggunakan perintah:

$ sudo chmod -R 755 /var/www/html/

Kami melakukan ini karena kami telah membuat direktori terpisah untuk setiap blok server untuk menyimpan datanya. Jadi kami membuat direktori root Nginx sebagai hanya baca untuk semua pengguna kecuali pengguna root.

Kami telah membuat direktori yang diperlukan untuk menyimpan data dari setiap blok server, mengatur izin yang tepat. Sekarang, saatnya membuat beberapa contoh halaman yang akan disajikan dari setiap blok server.

3. Buat halaman web demo untuk setiap host

Mari kita buat halaman contoh untuk situs ostechnix1.lan. Untuk melakukannya, jalankan:

$ sudo vi /var/www/html/ostechnix1.lan/public_html/index.html

Tambahkan baris berikut di dalamnya:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix1.lan website</h1>
 </body>
</html>

Simpan dan tutup file.

Demikian juga, buat halaman contoh untuk situs ostechnix2.lan:

$ sudo vi /var/www/html/ostechnix2.lan/public_html/index.html

Tambahkan baris berikut di dalamnya:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix2.lan website</h1>
 </body>
</html>

Simpan dan tutup file.

4. Buat file konfigurasi untuk setiap host

Selanjutnya, kita perlu membuat file konfigurasi untuk setiap blok server. Pertama, mari kita lakukan ini untuk situs ostechnix1.lan.

Salin konten file konfigurasi blok server default ke file blok server baru seperti di bawah ini.

$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix1.lan.conf
$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix2.lan.conf

Selanjutnya, edit ostechnix.lan1.conf berkas:

$ sudo vi /etc/nginx/sites-available/ostechnix1.lan.conf

Buat perubahan yang diperlukan di server_name dan akar arahan agar sesuai dengan nama domain pertama. Semua perubahan ditampilkan dalam huruf tebal di bawah ini.

# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix1.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix1.lan www.ostechnix1.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Simpan dan tutup file.

Selanjutnya, edit ostechnix2.lan.conf berkas:

$ sudo vi /etc/nginx/sites-available/ostechnix2.lan.conf

Buat perubahan yang diperlukan di server_name dan akar arahan untuk mencerminkan ke nama domain kedua. Semua perubahan ditampilkan dalam huruf tebal.

# Default server configuration
#
server {
listen 80;
listen [::]:80;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix2.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix2.lan www.ostechnix2.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Seperti yang mungkin Anda perhatikan dalam konfigurasi di atas, saya telah membuat satu perubahan lagi. Saya menghapus default_server baris di listen 80; dan dengarkan [::]:80; arahan dalam file blok server kedua (ostechnix2.lan). Karena, kami sudah menggunakan default_server baris di blok server pertama, maka kami menghapusnya dari file kedua untuk menghindari konflik.

Simpan/tutup file.

5. Aktifkan blok server Nginx

Setelah melakukan perubahan yang diperlukan, nonaktifkan file konfigurasi blok server default, dan aktifkan semua file konfigurasi blok server yang baru dibuat seperti yang ditunjukkan di bawah ini.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/ostechnix1.lan.conf /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/ostechnix2.lan.conf /etc/nginx/sites-enabled/

Mulai ulang layanan Nginx untuk menerapkan perubahan.

$ sudo systemctl restart nginx

Itu dia. Kami telah berhasil mengonfigurasi blok server di Nginx. Mari kita lanjutkan dan periksa apakah mereka berfungsi atau tidak.

6. Uji blok Server Nginx

Buka file /etc/hosts di editor apa pun:

$ sudo vi /etc/hosts

Tambahkan semua situs/domain virtual Anda satu per satu seperti di bawah ini.

[...]
192.168.225.24   ostechnix1.lan
192.168.225.24   ostechnix2.lan
[...]

Harap dicatat bahwa jika Anda ingin mengakses blok server dari sistem jarak jauh mana pun, Anda harus menambahkan baris di atas di setiap file /etc/hosts sistem jarak jauh. Simpan dan tutup file.

Buka browser web Anda dan arahkan ke http://ostechnix1.lan atau http://ostechnix2.lan .

laman pengujian ostechnix1.lan:

laman pengujian ostechnix2.lan:

Selamat! Anda sekarang dapat mengakses semua situs web/domain Anda. Mulai sekarang, Anda dapat mengunggah data dan menyajikannya dari situs web yang berbeda.


Ubuntu
  1. Cara Mengatur Server Penyimpanan iSCSI di Ubuntu 18.04 LTS

  2. Cara Mengatur Server Rsyslog di Ubuntu 18.04 LTS

  3. Cara Mengatur Server Penyimpanan iSCSI di Ubuntu 20.04 LTS

  1. Cara Mengatur Blok Server Nginx di Ubuntu 18.04

  2. Cara Menginstal Nginx di Ubuntu 20.04

  3. Cara Mengatur Blok Server Nginx di Ubuntu 20.04

  1. Cara Mengatur Server dan Klien Kerberos di Ubuntu 18.04 LTS

  2. Cara Mengatur Server IRedMail di Ubuntu 18.04 LTS

  3. Cara mengatur Server VPN menggunakan Pritunl di Ubuntu 18.04 LTS