LEMP adalah alternatif yang sangat baik untuk server LAMP tradisional. Nginx lebih ringan dan lebih cepat dari Apache dalam beberapa situasi. Itu juga dapat dikonfigurasi untuk melakukan hal-hal berguna lainnya, seperti berfungsi sebagai proxy terbalik. Sama seperti LAMP, Debian adalah platform yang sangat baik untuk server LEMP. Semua yang Anda butuhkan tersedia di repositori Debian, jadi mudah untuk memulai.
Dalam tutorial ini Anda akan mempelajari:
- Cara Menyiapkan MariaDB
- Cara Menginstal PHP
- Cara Memasang Nginx
- Cara Mengonfigurasi Nginx
- Cara Menguji Server Anda
PHPinfo tentang LEMP di Debian 10.
Persyaratan dan Konvensi Perangkat Lunak yang Digunakan
Kategori | Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan |
---|---|
Sistem | Penghancur Debian 10 |
Perangkat Lunak | Nginx, MariaDB, dan PHP |
Lainnya | Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo perintah. |
Konvensi | # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa |
Menyiapkan MariaDB
Tempat terbaik untuk memulai dalam menyiapkan server LEMP Anda adalah database. Untuk panduan ini, MaraiDB akan berfungsi sebagai database. Karena ini adalah pengganti drop-in untuk MySQL, MariaDB adalah pilihan yang sangat baik. Sebelum Anda dapat menggunakan MariaDB untuk proyek Anda, Anda harus mengonfigurasinya. Tidak perlu banyak untuk menjalankan aplikasi seperti WordPress, jadi tidak perlu waktu lama.
Instal MariaDB
Mulailah dengan benar-benar menginstal server MariaDB.
$ sudo apt install mariadb-server
Menyiapkan Basis Data
Dengan MariaDB terinstal, Anda siap untuk menyiapkan database Anda untuk bekerja dengan aplikasi web. MariaDB memiliki skrip yang akan membantu Anda mengamankan server database Anda secara otomatis, jadi mulailah dengan menjalankannya.
$ sudo mysql_secure_installation
Ikuti petunjuk dalam skrip. Siapkan kata sandi root, saat Anda diminta. Defaultnya bagus untuk yang lainnya.
Sekarang, masuk ke MariaDB menggunakan mysql
perintah dan menentukan root
pengguna.
# mysql -u root -p
Buat database untuk proyek Anda.
CREATE DATABASE newdb;
Selanjutnya, buat pengguna yang akan terhubung dan mengelola database.
CREATE USER 'username'@'localhost' IDENTIFIED BY 'userpassword';
Pengguna tersebut akan membutuhkan kontrol penuh dari database untuk dapat menjalankan aplikasi web. Berikan semua hak istimewa pada database dan tabelnya.
GRANT ALL PRIVILEGES ON newdb.* TO 'username'@'localhost';
Semuanya sudah diatur, dan siap digunakan. Hapus hak istimewa Anda, dan keluar dari MariaDB.
FLUSH PRIVILEGES; \q
Instal PHP
PHP adalah bagian berikutnya dari teka-teki. Anda tidak memerlukan seluruh paket PHP Debian, hanya PHP-FPM. Instal dengan modul MySQL.
$ sudo apt install php-fpm php-mysql
Instal Nginx
Hampir semuanya ada di tempatnya. Anda hanya perlu menyiapkan server web, Nginx. Untuk memulai, instal Nginx di sistem Anda dari repositori Debian.
$ sudo apt install nginx
Konfigurasi Nginx
Nginx adalah server web yang kuat, dan menawarkan banyak pilihan. Itu juga menunjukkan bahwa ada banyak konfigurasi yang diperlukan untuk menjalankannya persis seperti yang Anda inginkan. Panduan ini akan memberi Anda pengaturan kerja dasar, tetapi Anda dapat melakukan lebih banyak hal dengan Nginx.
Konfigurasi situs Nginx disimpan di /etc/nginx/sites-available
dan ditautkan ke /etc/nginx/sites-enabled
. Buat file baru untuk konfigurasi server Anda di /etc/nginx/sites-available
, dan buka di editor teks Anda.
Mulailah dengan membuat blok server untuk memberi tahu Nginx bahwa ini adalah konfigurasi situs baru.
server { }
Sisa konfigurasi Anda akan masuk ke blok itu. Selanjutnya, tambahkan alamat pendengar. Ini adalah nomor port yang diikuti oleh atribut penting situs Anda. Jika ini akan menjadi satu-satunya atau situs default Anda, tambahkan default_server
setelah nomor port.
server { listen 80 default_server; listen [::]:80 default_server; }
Tambahkan di folder root web tempat Anda ingin meletakkan situs Anda. /var/www/html
adalah default biasa. Ikuti itu dengan memberi tahu Nginx nama indeks situs Anda, yang lebih dikenal sebagai beranda.
server { listen 80 default_server; listen [::]:80 default_server; root /ver/www/html; index index.php index.html; }
Sekarang, tambahkan nama domain situs Anda sebagai server_name
. Jika ini hanya server lokal, gunakan _
sebagai pengganti domain.
server { listen 80 default_server; listen [::]:80 default_server; root /ver/www/html; index index.php index.html; server_name yourwebsite.com; }
Blok konfigurasi berikutnya ini memberi tahu Nginx untuk memeriksa file yang cocok dengan alamat web saat ini.
server { listen 80 default_server; listen [::]:80 default_server; root /ver/www/html; index index.php index.html; server_name yourwebsite.com; location / { try_files $uri $uri/ =404; } }Konfigurasi Nginx untuk LEMP di Debian 10.
Akhirnya, blok terakhir ini memberitahu Nginx untuk meneruskan file PHP ke PHP-FPM. Di situlah sebagian besar pekerjaan akan diselesaikan.
server { listen 80 default_server; listen [::]:80 default_server; root /ver/www/html; index index.php index.html; server_name yourwebsite.com; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; } }
Setelah selesai, simpan konfigurasi Anda, dan keluar. Sekarang, tautkan ke sites-enabled
.
$ sudo ln -s /etc/nginx/sites-available/your-site /etc/nginx/sites-enabled/your-site
Kemudian, restart server untuk mengaktifkan situs.
$ sudo systemctl restart nginx
Uji Server Anda
Cara termudah untuk memastikan bahwa server Anda berfungsi dengan benar adalah dengan membuat file PHP baru di root web Anda untuk menjalankan beberapa kode PHP. Buat index.php
di /var/www/html/
, dan buka dengan editor teks Anda. Masukkan baris kode berikut ke dalam file, dan simpan.
<?php phpinfo(); ?>
Buka browser Anda, dan navigasikan ke server Anda. Anda akan melihat tabel informasi PHP tentang server Anda. Jika ya, server Anda berfungsi normal, dan siap untuk aplikasi PHP Anda, seperti WordPress.
Kesimpulan
Dari sana, Anda dapat melakukan apa saja. Konfigurasi server akan tetap di tempatnya, dan semuanya akan tetap berfungsi, kecuali Anda mengubahnya. Anda juga dapat menambahkan lebih banyak situs ke server Nginx yang sama dengan konfigurasi serupa. Cukup ubah server_name
untuk menunjuk ke domain yang berbeda.