GNU/Linux >> Belajar Linux >  >> Debian

Cara Memasang LAMP Stack di Debian 10 Buster Server/Desktop

Tutorial ini akan menunjukkan cara menginstal Apache, MariaDB dan PHP7.3 (LAMP stack) di Debian 10 Buster. Tumpukan perangkat lunak adalah seperangkat alat perangkat lunak yang dibundel bersama. LAMP adalah singkatan dari L inux, A tempel, M ariaDB/L ySQL dan P HP yang semuanya open source dan gratis untuk digunakan. Ini adalah tumpukan perangkat lunak paling umum yang mendukung situs web dinamis dan aplikasi web. Linux adalah sistem operasinya; Apache adalah server web; MariaDB/MySQL adalah server database dan PHP adalah bahasa skrip sisi server yang bertanggung jawab untuk menghasilkan halaman web dinamis.

Keempat komponen tersebut gratis dan open-source. Namun, karena MySQL sekarang dimiliki oleh Oracle dan ada kemungkinan Oracle mengubahnya menjadi produk sumber tertutup, kami akan memilih MariaDB daripada MySQL.

Prasyarat Memasang LAMP Stack di Debian 10 Buster

Untuk mengikuti tutorial ini, Anda memerlukan OS Debian 10 yang berjalan di komputer lokal Anda atau di server jauh.

Jika Anda mencari VPS (Virtual Private Server), maka Anda dapat mendaftarkan akun di Vultr melalui tautan khusus ini untuk mendapatkan kredit gratis $50 (hanya untuk pengguna baru). Dan jika Anda perlu menyiapkan tumpukan LAMP dengan nama domain, sebaiknya beli nama domain dari NameCheap karena harganya murah dan mereka memberikan perlindungan privasi whois secara gratis.

Harap dicatat bahwa Anda harus memiliki hak akses root saat menginstal perangkat lunak di Debian. Anda dapat menambahkan sudo di awal perintah, atau gunakan su - perintah untuk beralih ke pengguna root.

Langkah 1:Perbarui Paket Perangkat Lunak

Sebelum kita menginstall LAMP stack, ada baiknya untuk memperbarui repositori dan paket perangkat lunak. Jalankan perintah berikut di OS Debian 10 Anda.

sudo apt updatesudo apt upgrade

Langkah 2:Instal Apache Web Server di Debian 10

Masukkan perintah berikut untuk menginstal server Web Apache. apache2-utils paket akan menginstal beberapa utilitas yang berguna, seperti alat pembandingan server HTTP Apache ab dan alat manajemen otentikasi pengguna htpasswd .

sudo apt install apache2 apache2-utils

Setelah diinstal, Apache harus dimulai secara otomatis. Periksa statusnya dengan systemctl .

systemctl status apache2

Contoh keluaran:

● apache2.service - Server HTTP Apache Dimuat:dimuat (/lib/systemd/system/apache2.service; diaktifkan; preset vendor:diaktifkan) Aktif:aktif (berjalan) sejak Kam 2019-07-11 13:30:35 UTC; 4 menit 31 detik yang lalu Dokumen:https://httpd.Apache.org/docs/2.4/ Proses:17962 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) PID Utama:17966 (apache2) Tugas :55 (batas:545) Memori:4,8M CGroup:/system.slice/apache2.service 17966 /usr/sbin/apache2 -k start 17967 /usr/sbin/apache2 -k start 17968 /usr /sbin/Apache2 -k start

Jika tidak berjalan, gunakan systemctl untuk memulainya.

sudo systemctl start Apache2

Sebaiknya aktifkan juga Apache untuk memulai secara otomatis saat boot.

sudo systemctl aktifkan apache2

Periksa versi Apache:

sudo apache2 -v

Keluaran:

Versi server:Apache/2.4.38 (Debian)Server dibuat:07-04-2019T18:15:40

Sekarang ketikkan alamat IP publik server Debian 10 Anda di bilah alamat browser. Anda akan melihat "Berhasil!" Halaman web, yang berarti server Web Apache berjalan dengan baik. Jika Anda menginstal LAMP di komputer Debian 10 lokal Anda, maka Anda harus mengetikkan 127.0.0.1 atau localhost di bilah alamat browser.

Jika koneksi ditolak atau gagal diselesaikan, mungkin ada firewall yang mencegah permintaan masuk ke port TCP 80. Jika Anda menggunakan firewall iptables, maka Anda perlu menjalankan perintah berikut untuk membuka port TCP 80.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

Jika Anda menggunakan firewall UFW, jalankan perintah ini untuk membuka port TCP 80.

sudo ufw izinkan http

Sekarang kita perlu menyetel www-data (Pengguna Apache) sebagai pemilik root dokumen (atau dikenal sebagai root web). Secara default dimiliki oleh pengguna root.

sudo chown www-data:www-data /var/www/html/ -R

Secara default, Apache menggunakan nama host sistem sebagai ServerName globalnya . Jika nama host sistem tidak dapat diselesaikan di DNS, maka Anda mungkin akan melihat kesalahan berikut setelah menjalankan sudo apache2ctl -t perintah.

AH00558:apache2:Tidak dapat dengan andal menentukan nama domain yang sepenuhnya memenuhi syarat server, menggunakan 127.0.0.1. Setel arahan 'ServerName' secara global untuk menyembunyikan pesan ini

Untuk mengatasi masalah ini, kita dapat mengatur ServerName global di Apache. Gunakan editor teks baris perintah Nano untuk membuat file konfigurasi baru.

sudo nano /etc/apache2/conf-available/servername.conf

Tambahkan baris berikut dalam file ini.

Nama Server localhost

Simpan dan tutup file. Untuk menyimpan file di editor teks Nano, tekan Ctrl+O , lalu tekan Enter untuk mengonfirmasi. Untuk keluar, tekan Ctrl+X . Kemudian aktifkan file konfigurasi ini.

sudo a2enconf servername.conf

Muat ulang Apache agar perubahan diterapkan.

sudo systemctl reload apache2

Sekarang jika Anda menjalankan sudo apache2ctl -t perintah lagi, Anda tidak akan melihat pesan kesalahan di atas.

Langkah 3:Instal Server Database MariaDB di Debian 10

MariaDB adalah pengganti drop-in untuk MySQL. Masukkan perintah berikut untuk menginstalnya di Debian 10.

sudo apt install mariadb-server mariadb-client

Setelah terinstal, server MariaDB akan otomatis menatap. Gunakan systemctl untuk memeriksa statusnya.

systemctl status mariadb

Keluaran:

● mariadb.service - server database MariaDB 10.3.15 Dimuat:dimuat (/lib/systemd/system/mariadb.service; diaktifkan; preset vendor:diaktifkan) Aktif:aktif (berjalan) sejak Kamis 11-07-2019 13 :57:03 UTC; 16 detik yang lalu Dokumen:man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ PID Utama:18566 (mysqld) Status:"Menerima permintaan SQL Anda sekarang..." Tugas:31 (batas :545) Memori:73,9 juta CGKelompok:/system.slice/mariadb.service 18566 /usr/sbin/mysqld

Jika tidak berjalan, mulai dengan perintah ini:

sudo systemctl start mariadb

Untuk mengaktifkan MariaDB agar mulai otomatis saat boot, jalankan

sudo systemctl aktifkan mariadb

Sekarang jalankan skrip keamanan pasca instalasi.

sudo mysql_secure_installation

Saat diminta untuk memasukkan kata sandi root MariaDB, tekan tombol Enter karena kata sandi root belum disetel. Kemudian masukkan y untuk mengatur kata sandi root untuk server MariaDB.

Selanjutnya, Anda tinggal menekan Enter untuk menjawab semua pertanyaan yang tersisa. Ini akan menghapus pengguna anonim, menonaktifkan login root jarak jauh dan menghapus database pengujian. Langkah ini merupakan persyaratan dasar untuk keamanan database MariaDB. (Perhatikan bahwa huruf Y dikapitalisasi, yang berarti itu adalah jawaban default.)

Secara default, paket MaraiDB di Debian menggunakan unix_socket untuk mengautentikasi login pengguna, yang pada dasarnya berarti Anda dapat menggunakan nama pengguna dan sandi OS untuk login ke konsol MariaDB. Jadi Anda dapat menjalankan perintah berikut untuk login tanpa memberikan kata sandi root MariaDB.

sudo mariadb -u root

atau

sudo mysql -u root

Untuk keluar, jalankan

keluar;

Periksa informasi versi server MariaDB.

mariadb --version

Keluaran:

mariadb Ver 15.1 Distrib 10.3.15-MariaDB, untuk debian-linux-gnu (x86_64) menggunakan readline 5.2

Langkah 4:Instal PHP7.3 di Debian 10

Pada saat penulisan ini, PHP7.3 adalah versi stabil terbaru dari PHP dan memiliki sedikit peningkatan kinerja dibandingkan versi sebelumnya. Masukkan perintah berikut untuk menginstal PHP7.3 dari repositori Debian 10.

sudo apt install php7.3 libapache2-mod-php7.3 php7.3-mysql php-common php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline 

Aktifkan modul Apache php7.3 lalu restart server Web Apache.

sudo a2enmod php7.3sudo systemctl restart apache2

Periksa informasi versi PHP.

php --versi

Keluaran:

PHP 7.3.4-2 (cli) (dibuat:13 Apr 2019 19:05:48) ( NTS )Hak Cipta (c) 1997-2018 The PHP GroupZend Engine v3.3.4, Hak Cipta (c) 1998-2018 Zend Teknologi dengan Zend OPcache v7.3.4-2, Hak Cipta (c) 1999-2018, oleh Zend Technologies

Untuk menguji skrip PHP dengan server Apache, kita perlu membuat info.php file di direktori root Web dengan editor teks baris perintah, seperti Nano.

sudo nano /var/www/html/info.php

Rekatkan kode PHP berikut ke dalam file.

Simpan dan tutup file. (Untuk menyimpan file di editor teks Nano, tekan Ctrl+O , lalu tekan Enter untuk mengonfirmasi. Untuk keluar, tekan Ctrl+X .)

Sekarang di bilah alamat browser, masukkan server-ip-address/info.php . Ganti sever-ip-address dengan IP Anda yang sebenarnya. Jika Anda mengikuti tutorial ini di komputer lokal Anda, ketik 127.0.0.1/info.php atau localhost/info.php .

Anda akan melihat informasi PHP server Anda. Ini berarti skrip PHP dapat berjalan dengan baik dengan server web Apache. Anda dapat menemukan bahwa Zend OPcache diaktifkan.

Cara Menjalankan PHP-FPM dengan Apache

Pada dasarnya ada dua cara untuk menjalankan kode PHP dengan server web Apache:

  • Modul PHP Apache
  • PHP-FPM.

Pada langkah di atas, modul PHP7.3 digunakan untuk menangani kode PHP, yang biasanya baik-baik saja. Tetapi dalam beberapa kasus, Anda perlu menjalankan kode PHP dengan PHP-FPM sebagai gantinya. Begini caranya.

Nonaktifkan modul Apache PHP7.3.

sudo a2dismod php7.3

Instal PHP-FPM.

sudo apt install php7.3-fpm

Aktifkan proxy_fcgi dan setenvif modul.

sudo a2enmod proxy_fcgi setenvif

Aktifkan /etc/apache2/conf-available/php7.3-fpm.conf file konfigurasi.

sudo a2enconf php7.3-fpm

Mulai ulang Apache agar perubahan diterapkan.

sudo systemctl restart Apache2

Sekarang jika Anda menyegarkan info.php halaman di browser Anda, Anda akan menemukan bahwa Server API diubah menjadi FPM/FastCGI , yang berarti server web Apache akan menjalankan kode PHP dengan PHP-FPM.

Langkah Selanjutnya

Selamat! Anda telah berhasil menginstal Apache, MariaDB dan PHP7 di Debian 10 Buster. Untuk keamanan server Anda, Anda harus menghapus file info.php sekarang untuk mencegah pengintaian.

sudo rm /var/www/html/info.php

Saya harap tutorial ini membantu Anda menginstal tumpukan LAMP di Debian 10 Buster . Anda mungkin juga ingin melihat tutorial berikut untuk menginstal phpMyAdmin, alat administrasi MariaDB/MySQL berbasis web

  • Instal phpMyAdmin dengan Apache (LAMP) di Debian 10 Buster

Seperti biasa, jika menurut Anda postingan ini bermanfaat, berlangganan newsletter gratis kami untuk mendapatkan tutorial baru.


Debian
  1. Cara Mengatur Server LAMP di Debian 10 Buster

  2. Cara menginstal dan mengatur PHP dan Apache (LAMP stack) di Debian 11

  3. Cara Menginstal Server MySQL di Debian 10 Buster

  1. Instal LAMP Stack di Debian 11

  2. Cara Memasang Server LAMP di Debian 9

  3. Cara Memasang LAMP Stack di Debian 10

  1. Cara Menginstal Apache, MariaDB, PHP (LAMP Stack) di Debian 11

  2. Cara Memasang Server LAMP di Debian 11

  3. Cara Menginstal Syncthing di desktop/server Debian