Nginx:Installasi Ubuntu 20.04: Difference between revisions

Created page with "Nginx adalah server web (Open Source, berkinerja tinggi yang menguasai pangsa pasar besar di lingkungan produksi. Ini adalah server web yang ringan dan kuat yan..."
 
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
Nginx adalah server web ([[opensource|Open Source]], berkinerja tinggi yang menguasai pangsa pasar besar di lingkungan produksi. Ini adalah server web yang ringan dan kuat yang sebagian besar digunakan untuk menghosting situs web dengan lalu lintas tinggi.
{{Note|Untuk memulai, pastikan Anda memiliki instance Ubuntu 20.04 LTS dengan akses SSH dan pengguna Sudo dengan hak akses root. Selain itu, koneksi internet yang stabil disarankan untuk menginstal paket Nginx.}}
 


Dalam panduan ini, Anda akan mempelajari cara menginstal server web Nginx dan mengonfigurasi blok server Nginx (host virtual) di [[Ubuntu]] 20.04 LTS.
Nginx adalah server web ([[Open Source]], berkinerja tinggi yang menguasai pangsa pasar besar di lingkungan produksi. Ini adalah server web yang ringan dan kuat yang sebagian besar digunakan untuk menghosting situs web dengan lalu lintas tinggi.


{{Note|Untuk memulai, pastikan Anda memiliki instance Ubuntu 20.04 LTS dengan akses SSH dan pengguna Sudo dengan hak akses root. Selain itu, koneksi internet yang stabil disarankan untuk menginstal paket Nginx.}}
Dalam panduan ini, Anda akan mempelajari cara menginstal server web [[Nginx]] dan mengonfigurasi blok server [[Nginx]] (host virtual) di [[Ubuntu]] 20.04 LTS.


==Installasi==
==Installasi==


*Sebelum menginstal Nginx, perbarui daftar paket server Anda.
*Sebelum menginstal Nginx, perbarui daftar paket server Anda.
sudo apt update
 
<syntaxhighlight lang="shell">
sudo apt update
</syntaxhighlight>


*Kemudian instal Nginx dengan menjalankan perintah:
*Kemudian instal Nginx dengan menjalankan perintah:
sudo apt install nginx
 
<syntaxhighlight lang="shell">
sudo apt install nginx
</syntaxhighlight>


*Nginx berhasil diinstal, Anda dapat memulai dan memverifikasinya dengan menjalankan:
*Nginx berhasil diinstal, Anda dapat memulai dan memverifikasinya dengan menjalankan:
sudo systemctl start nginx


sudo systemctl status nginx
<syntaxhighlight lang="shell">
sudo systemctl start nginx
</syntaxhighlight><syntaxhighlight lang="shell">
 
sudo systemctl status nginx
</syntaxhighlight>


*Cek versi nginx
*Cek versi nginx
sudo dpkg -l nginx
 
<syntaxhighlight lang="shell">
sudo dpkg -l nginx
</syntaxhighlight>


==Kelola Proses Nginx di Ubuntu 20.04==
==Kelola Proses Nginx di Ubuntu 20.04==


*Untuk menghentikan server web Nginx, cukup jalankan
*Untuk menghentikan server web Nginx, cukup jalankan
sudo systemctl stop nginx
 
<syntaxhighlight lang="shell">
sudo systemctl stop nginx
</syntaxhighlight>


*Untuk mengaktifkan server web lagi, jalankan
*Untuk mengaktifkan server web lagi, jalankan
sudo systemctl start nginx
 
<syntaxhighlight lang="shell">
sudo systemctl start nginx
</syntaxhighlight>


*Untuk memulai Nginx secara otomatis saat boot atau reboot
*Untuk memulai Nginx secara otomatis saat boot atau reboot
sudo systemctl enable nginx
 
<syntaxhighlight lang="shell">
sudo systemctl enable nginx
</syntaxhighlight>


*Setelah melakukan konfigurasi pada virtual host, cek Nginx apakah terjadi kesalahan saat melakukan konfigurasi
*Setelah melakukan konfigurasi pada virtual host, cek Nginx apakah terjadi kesalahan saat melakukan konfigurasi
sudo nginx -t
 
<syntaxhighlight lang="shell">
sudo nginx -t
</syntaxhighlight>


*Jika Anda ingin me-restart server web terutama setelah membuat perubahan pada file konfigurasi, jalankan
*Jika Anda ingin me-restart server web terutama setelah membuat perubahan pada file konfigurasi, jalankan
sudo systemctl restart nginx
 
<syntaxhighlight lang="shell">
sudo systemctl restart nginx
</syntaxhighlight>


*Atau, Anda dapat memuat ulang
*Atau, Anda dapat memuat ulang
  sudo systemctl reload nginx
 
<syntaxhighlight lang="shell">
sudo systemctl reload nginx
</syntaxhighlight>
 
==Create an Nginx Server Block==
Blok server Nginx seperti host virtual di Apache. Ini tidak akan menggunakan blok server default karena tidak memadai untuk menjalankan kode PHP dan memodifikasinya menjadi berantakan. Jadi hapus symlink default di direktori yang mendukung situs dengan menjalankan perintah berikut. (Masih tersedia sebagai <code>/etc/nginx/sites-available/default</code>.)
 
*Hapus symlink default
 
<syntaxhighlight lang="shell">
sudo rm /etc/nginx/sites-enabled/default
</syntaxhighlight>
 
*Kemudian gunakan editor teks baris perintah seperti Nano untuk membuat file blok server baru di bawah direktori <code>/etc/nginx/conf.d/</code>.
 
<syntaxhighlight lang="shell">
sudo nano /etc/nginx/conf.d/default.conf
</syntaxhighlight>
 
*Paste teks berikut ke dalam file. berikut ini akan membuat Nginx listening pada port IPv4 80 dan IPv6 port 80.
 
<syntaxhighlight lang="nginx" line="1">
server {
  listen 80;
  listen [::]:80;
  server_name _;
  root /usr/share/nginx/html/;
  index index.php index.html index.htm index.nginx-debian.html;
 
  location / {
    try_files $uri $uri/ /index.php;
  }
 
  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }
 
  # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
      access_log        off;
      log_not_found    off;
      expires          360d;
  }
 
  # disable access to hidden files
  location ~ /\.ht {
      access_log off;
      log_not_found off;
      deny all;
  }
}
</syntaxhighlight>
 
*Untuk menyimpan tekan <code>Ctrl + O</code> → <code>Enter</code> → <code>Ctrl + X</code>
*Lalu coba test konfigurasi nginx
 
<syntaxhighlight lang="shell">
sudo nginx -t
</syntaxhighlight>
 
*Setelah tidak terjadi error, kemudian restart
 
<syntaxhighlight lang="shell">
sudo systemctl reload nginx
</syntaxhighlight>


==Source==
==Source==
*[https://bit.ly/3HlXfmq tecmint.com]
*[https://bit.ly/3HlXfmq tecmint.com]
*[https://www.linuxbabe.com/ubuntu/install-lemp-stack-ubuntu-20-04-server-desktop linuxbabe.com]


[[Category:Server]]
[[Category:Server]]
[[Category:Web Server]]
[[Category:Nginx]]
[[Category:Tutorial]]