Nginx:Installasi Ubuntu 20.04: Difference between revisions
Appearance
No edit summary |
|||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{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.}} | |||
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. | |||
==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 45: | 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 96: | Line 143: | ||
[[Category:Server]] | [[Category:Server]] | ||
[[Category:Web Server]] | |||
[[Category:Nginx]] | |||
[[Category:Tutorial]] | |||
Latest revision as of 20:52, 3 January 2023
| 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. |
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.
Installasi
- Sebelum menginstal Nginx, perbarui daftar paket server Anda.
sudo apt update
- Kemudian instal Nginx dengan menjalankan perintah:
sudo apt install nginx
- Nginx berhasil diinstal, Anda dapat memulai dan memverifikasinya dengan menjalankan:
sudo systemctl start nginx
sudo systemctl status nginx
- Cek versi nginx
sudo dpkg -l nginx
Kelola Proses Nginx di Ubuntu 20.04
- Untuk menghentikan server web Nginx, cukup jalankan
sudo systemctl stop nginx
- Untuk mengaktifkan server web lagi, jalankan
sudo systemctl start nginx
- Untuk memulai Nginx secara otomatis saat boot atau reboot
sudo systemctl enable nginx
- Setelah melakukan konfigurasi pada virtual host, cek Nginx apakah terjadi kesalahan saat melakukan konfigurasi
sudo nginx -t
- Jika Anda ingin me-restart server web terutama setelah membuat perubahan pada file konfigurasi, jalankan
sudo systemctl restart nginx
- Atau, Anda dapat memuat ulang
sudo systemctl reload nginx
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 /etc/nginx/sites-available/default.)
- Hapus symlink default
sudo rm /etc/nginx/sites-enabled/default
- Kemudian gunakan editor teks baris perintah seperti Nano untuk membuat file blok server baru di bawah direktori
/etc/nginx/conf.d/.
sudo nano /etc/nginx/conf.d/default.conf
- Paste teks berikut ke dalam file. berikut ini akan membuat Nginx listening pada port IPv4 80 dan IPv6 port 80.
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;
}
}
- Untuk menyimpan tekan
Ctrl + O→Enter→Ctrl + X - Lalu coba test konfigurasi nginx
sudo nginx -t
- Setelah tidak terjadi error, kemudian restart
sudo systemctl reload nginx