Meskipun Nginx tersedia untuk Windows 10/8/7, namun, untuk benar-benar memahami, mengalami, membangun, atau menguji aplikasi web, saya sarankan untuk menggunakannya di Linux. Dan Windows 10 WSL adalah pilihan terbaik untuk menjalankan Linux+Nginx+PHP+MySQL stack untuk mendapatkan server web berbasis Linux yang lengkap tanpa benar-benar menginstal distro Linux yang terpisah.
Jadi, mari kita lihat cara menginstal Linux+Nginx+PHP+MySQL stack di Windows 10 WSL (Windows Subsystem for Linux).
Apa itu Nginx?
Nginx (engine x) adalah HTTP berkinerja tinggi dan server web proxy terbalik yang juga menyediakan service IMAP/pop3/smtp.
Ini didistribusikan di bawah perjanjian seperti BSD dan ditandai dengan lebih sedikit memori dan kekuatan bersamaan yang kuat. Nginx dapat dikompilasi dan dijalankan di sebagian besar os Unix & Linux dan memiliki port Windows juga.
Dalam kasus konkurensi tinggi, Nginx adalah alternatif yang baik untuk service Apache: Nginx adalah salah satu platform perangkat lunak yang mendominasi bisnis web hosting yang mendukung respons hingga 50.000 koneksi bersamaan berkat Nginx karena memilih Epoll dan Kqueue sebagai model pengembangan.
Kode Nginx ditulis seluruhnya dari bahasa c dan telah di-porting ke banyak arsitektur dan sistem operasi termasuk Linux, FreeBSD, Solaris, mac os x, AIX, dan Microsoft windows.
Nginx memiliki pustaka fungsinya sendiri, dan selain zlib, PCRE, dan OpenSSL, modul standar hanya menggunakan fungsi pustaka sistem C. Juga, perpustakaan pihak ketiga ini tidak dapat digunakan jika Anda tidak memerlukan atau mempertimbangkan potensi konflik otorisasi.
Langkah 1: Instal Windows 10 WSL untuk Nginx + php
Jika Anda belum mengaktifkan Windows 10 WSL (Windows Subsystem for Linux) di sistem Anda, maka cukup buka bagian pencarian Windows 10 dan ketik ” Turn Windows feature on or off ” setelah itu gulir dan cari subsistem Windows untuk Opsi Linux, periksa dan klik tombol OK. Ini akan mengaktifkannya di sistem Anda. Untuk panduan langkah demi langkah lihat ini: Cara mengaktifkan WSL di Windows 10.
Langkah 2: Pilih Aplikasi Distro Linux untuk WIndows 10 WSL
Setelah Anda mengaktifkan WSL di sistem Anda, langkah selanjutnya adalah mendapatkan beberapa aplikasi distro Linux dari toko Microsoft. Di sini kita menginstal dan menggunakan aplikasi Ubuntu di Windows 10 WSL. Cukup cari toko Microsoft di sistem Windows 10 Anda dan kemudian di kotak pencarian ketik: Jalankan Linux di Windows. Instruksi menginstal Nginx stack akan sama untuk gambar WSL Debian dan Kali Linux.
Dan pilih Ubuntu lalu Dapatkan.
Langkah 3: Jalankan Ubuntu untuk menginstal Nginx + PHP di Windows 10 WSL
Setelah Anda membuka Linux Ubuntu 18.04 WSL pada sistem Windows 10 Anda, itu akan terlihat dan berperilaku seperti command terminal Linux lainnya.
Hal pertama yang kita lakukan adalah memperbarui Ubuntu Wsl, gunakan perintah yang diberikan di bawah ini:
sudo apt-get update
sudo apt-get upgrade
Kedua menjalankan perintah untuk menginstal Nginx di Windows 10 Ubuntu WSL:
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install -y nginx
Langkah 4: Mulai service server web Nginx di WSL
Kita telah berhasil menginstal Nginx di aplikasi Windows 10 WSL Linux kita, sekarang yang harus kita lakukan adalah memulai servicenya. Untuk itu gunakan perintah di bawah ini
service sudo nginx mulai
Langkah 5: Uji Server Web Nginx
Buka browser Windows 10 Anda dan ketik http:localhost:80
Ini akan menampilkan layar selamat datang dari server web ini seperti yang ditunjukkan di bawah ini pada tangkapan layar.
“Selamat datang di nginx! Jika Anda melihat halaman ini, server web nginx berhasil diinstal dan berfungsi. Diperlukan konfigurasi lebih lanjut. Untuk dokumentasi dan dukungan online, silakan merujuk ke nginx.org. Dukungan komersial tersedia di nginx.com. Terima kasih telah menggunakan nginx. “
Langkah 6: Menginstal PHP untuk Nginx di Windows 10 WSL
Webserver sudah siap sekarang kita harus menginstal dan mengkonfigurasi PHP untuk digunakan dengan server web open-source Nginx. Di sini kita menginstal modul PHP-FPM dan PHP-MySQL untuk menggunakan PHP dengan Nginx dan MySQL.
Tambahkan repo:
sudo add-apt-repository ppa:ondrej/php
Periksa versi PHP terbaru yang tersedia untuk diinstal
sudo apt-cache tampilkan php
Menurut versi yang tersedia, instal modul PHP berikut, dalam kasus kita versi terbaru adalah php7.4
sudo apt-get install php7.4-cli php7.4-fpm php7.4-curl php7.4-gd php7.4-mysql php7.4-mbstring zip unzip
Periksa versi yang diinstal
php –versi
Langkah 7: Mulai service PHP-fpm
Berikut adalah perintah untuk memulai service PHP-fpm yang diinstal
service sudo php7.4-fpm mulai
Langkah 8: Error Nginx (opsional)
Dalam kasus error berikut seperti terjadi:
“502 Bad Gateway” “502 Bad Gateway NGINX” “502 Proxy Error” “502 Layanan Overload Sementara” “Error 502” “HTTP Error 502 – Bad Gateway” “HTTP 502 Bad Gateway”
Kita harus mengonfigurasi PHP-fpm untuk Nginx jika tidak, PHP tidak akan dapat menghubungi Nginx:
Jadi, buka file konfigurasi php-fpm
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
Dalam file temukan jalur soket mendengarkan PHP-fpm:
dengarkan = 127.0.0.1:9000
Ubah itu menjadi
mendengarkan= /run/php/php7.4-fpm.sock
Catatan: Jika Anda ingin menggunakan versi PHP lain, ganti php7.4 dengan versi tersebut.
Konfigurasikan PHP untuk Konfigurasi situs default Nginx
sudo nano /etc/nginx/sites-available/default
Dalam konfigurasi situs default, untuk menggunakan PHP dengan Nginx, pertama-tama kita harus menambahkan index.php di dalamnya …
Temukan baris di bawah ini dan tambahkan index.php ke daftar.
index index.html index.htm index.nginx-debian.html;
# Sebagai contoh:
index index.php index.html index.htm index.nginx-debian.html;
Sekarang temukan baris di bawah ini dan lakukan pengeditan seperti yang disebutkan di bawah ini:
#location ~.php$ { # include snippets/fastcgi-php.conf; # # # Dengan php-fpm (atau soket unix lainnya): # fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # # Dengan php-cgi (atau soket tcp lainnya): # fastcgi_pass 127.0.0.1:9000; #}
Hapus # atau batalkan komentar pada hal-hal berikut yang telah kita lakukan di sini…
lokasi ~.php$ { include snippets/fastcgi-php.conf; # # # Dengan php-fpm (atau soket unix lainnya): fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # # Dengan php-cgi (atau soket tcp lainnya): # fastcgi_pass 127.0.0.1:9000; }
Setelah semua perubahan tekan CTRL + X dan ketik Y lalu tekan tombol Enter untuk menyimpan perubahan.
Mulai ulang service Nginx dan PHP-FPM
sudo service nginx reload sudo service php7.4-fpm restart
Langkah 9: Buat file uji PHP
Buat file index.php
sudo touch /var/www/html/index.php
Buka:
sudo nano /var/www/html/index.php
Dan tambahkan baris berikut di dalamnya
<?php phpinfo();
Sekali lagi tekan CTRL+X dan ketik Y lalu tekan tombol enter untuk menyimpannya.
Catatan : Direktori root untuk menyimpan proyek Anda, sehingga Anda dapat memanggilnya menggunakan Nginx di browser sama seperti Apache, yaitu /var/www/
Langkah 10: Akses info PHP di server web Nginx WSL Windows 10
Terakhir, buka http:localhost atau http:ip_address_of_your_system
Langkah 11: Instal MySQL dengan Nginx di Windows 10 (opsional)
Jika Anda juga ingin menginstal MySQL di Windows WSL bersama dengan Nginx dan PHP maka berikut adalah perintahnya:
sudo apt install mysql-server
Untuk mengamankan MySQL perintahnya adalah:
sudo mysql_secure_installation
Dengan cara ini, kita dapat mengatur Linux, Nginx, PHP & MySQL di Windows WSL (Windows Subsystem for Linux)