Cara menginstal Nginx + php + MySQL di WSL Windows 10

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)