Nginx:Installasi Ubuntu 20.04: Difference between revisions
No edit summary |
No edit summary |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 2: | Line 2: | ||
Nginx adalah server web ([[ | 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. | ||
Dalam panduan ini, Anda akan mempelajari cara menginstal server web Nginx dan mengonfigurasi blok server Nginx (host virtual) di [[Ubuntu]] 20.04 LTS. | 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. | ||
<syntaxhighlight lang="shell"> | |||
sudo apt update | |||
</syntaxhighlight> | |||
*Kemudian instal Nginx dengan menjalankan perintah: | *Kemudian instal Nginx dengan menjalankan perintah: | ||
<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: | ||
<syntaxhighlight lang="shell"> | |||
sudo systemctl start nginx | |||
</syntaxhighlight><syntaxhighlight lang="shell"> | |||
sudo systemctl status nginx | |||
</syntaxhighlight> | |||
*Cek versi nginx | *Cek versi 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 | ||
<syntaxhighlight lang="shell"> | |||
sudo systemctl stop nginx | |||
</syntaxhighlight> | |||
*Untuk mengaktifkan server web lagi, jalankan | *Untuk mengaktifkan server web lagi, jalankan | ||
<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 | ||
<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 | ||
<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 | ||
<syntaxhighlight lang="shell"> | |||
sudo systemctl restart nginx | |||
</syntaxhighlight> | |||
*Atau, Anda dapat memuat ulang | *Atau, Anda dapat memuat ulang | ||
<syntaxhighlight lang="shell"> | |||
sudo systemctl reload nginx | |||
</syntaxhighlight> | |||
==Create an Nginx Server Block== | ==Create an Nginx Server Block== | ||
| Line 46: | Line 77: | ||
*Hapus symlink default | *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>. | *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. | *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> | *Untuk menyimpan tekan <code>Ctrl + O</code> → <code>Enter</code> → <code>Ctrl + X</code> | ||
*Lalu coba test konfigurasi nginx | *Lalu coba test konfigurasi nginx | ||
<syntaxhighlight lang="shell"> | |||
sudo nginx -t | |||
</syntaxhighlight> | |||
*Setelah tidak terjadi error, kemudian restart | *Setelah tidak terjadi error, kemudian restart | ||
<syntaxhighlight lang="shell"> | |||
sudo systemctl reload nginx | |||
</syntaxhighlight> | |||
==Source== | ==Source== | ||
| Line 97: | Line 143: | ||
[[Category:Server]] | [[Category:Server]] | ||
[[Category:Web Server]] | |||
[[Category:Nginx]] | |||
[[Category:Tutorial]] | |||