Apache HTTP Server (Apache), adalah salah satu perangkat lunak server web lintas platform gratis dan sumber terbuka yang paling populer, dirilis di bawah persyaratan Lisensi Apache 2.0. Apache populer sebagai bagian dari pengaturan LAMP, menjadi A dalam Akronim. Fungsionalitas server apache dapat diperluas dengan banyak modul yang tersedia.
PHP adalah bahasa scripting tujuan umum diarahkan pengembangan web. Ini adalah salah satu bahasa pemrograman populer untuk web. Alat populer seperti WordPress dikodekan menggunakan php. Perusahaan besar seperti Facebook juga banyak menggunakan php.
Konten Terkait
- Cara menginstal dan menyiapkan PHP dan Apache (LAMP stack) di Ubuntu 20.04
- Cara Menginstal Apache dan PHP (LAMP stack) di Rocky Linux/Centos 8
- Cara Menginstal dan menyiapkan PHP dan Nginx (LEMP) di Debian 11
Prasyarat
Untuk mengikuti panduan ini, pastikan Anda memiliki yang berikut:
- Server Debian 11 yang diperbarui
- Akses root ke server atau Pengguna dengan akses sudo
- Akses internet
Daftar Isi
- Memastikan bahwa server selalu mutakhir
- Menginstal PHP di Debian 11
- Menginstal Apache di Debian 11
- Mengonfigurasi host virtual
1. Memastikan bahwa server sudah diperbarui
Sebelum melanjutkan, itu selalu merupakan praktik yang baik untuk memastikan bahwa server up to date. Gunakan perintah ini untuk mencapainya
sudo apt update
sudo apt upgrade -y
2. Menginstal PHP di Debian 11
PHP tersedia di repo Debian 11 default. Versi terbaru PHP pada saat blog ini ditulis adalah PHP 7.4.
Instal PHP dan beberapa paket umum menggunakan perintah ini:
sudo apt install -y \
php \
php-common \
php-cli
Periksa versi PHP yang diinstal
$ apt-cache policy php
php:
Installed: 2:7.4+76
Candidate: 2:7.4+76
Version table:
*** 2:7.4+76 500
500 http://cdn-aws.deb.debian.org/debian bullseye/main amd64 Packages
100 /var/lib/dpkg/status
Periksa versi php yang diinstal menggunakan perintah ini:
$ php -v
PHP 7.4.25 (cli) (built: Oct 23 2021 21:53:50) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.25, Copyright (c), by Zend Technologies
3. Menginstal apache di Debian 11
Paket Apache tersedia di repositori default Debian 11 sebagai apache2
. Instal menggunakan perintah ini:
sudo apt install -y apache2
Konfirmasikan paket yang diinstal menggunakan perintah ini:
$ apt-cache policy apache2
apache2:
Installed: 2.4.51-1~deb11u1
Candidate: 2.4.51-1~deb11u1
Version table:
*** 2.4.51-1~deb11u1 500
500 http://security.debian.org/debian-security bullseye-security/main amd64 Packages
100 /var/lib/dpkg/status
2.4.48-3.1+deb11u1 500
500 http://cdn-aws.deb.debian.org/debian bullseye/main amd64 Packages
Layanan akan dimulai secara default. Periksa status menggunakan perintah ini:
$ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-12-14 03:01:04 UTC; 5min ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 19103 (apache2)
Tasks: 6 (limit: 4626)
Memory: 12.8M
CPU: 59ms
CGroup: /system.slice/apache2.service
├─19103 /usr/sbin/apache2 -k start
├─19105 /usr/sbin/apache2 -k start
├─19106 /usr/sbin/apache2 -k start
├─19107 /usr/sbin/apache2 -k start
├─19108 /usr/sbin/apache2 -k start
└─19109 /usr/sbin/apache2 -k start
Dec 14 03:01:04 ip-10-2-40-188 systemd[1]: Starting The Apache HTTP Server...
Dec 14 03:01:04 ip-10-2-40-188 systemd[1]: Started The Apache HTTP Server.
Untuk mengaktifkan layanan saat boot, gunakan perintah ini
sudo systemctl enable apache2
Untuk mengonfirmasi bahwa Apache telah diinstal dan berfungsi dengan baik, silakan kunjungi alamat IP server di browser (http://server_ip). Jika Anda tidak mengetahui IP server, dapatkan dengan menggunakan perintah ini di terminal Anda:
curl -4 icanhazip.com
Jika semuanya baik-baik saja, Anda akan melihat Halaman Default Apache2 Debian .
4. Mengonfigurasi host virtual
Dengan Apache, dimungkinkan untuk meng-host beberapa situs di server yang sama tempat Apache dijalankan. Ini selalu dapat dicapai dengan menggunakan beberapa domain yang masing-masing mewakili situs yang dihosting oleh server.
Host virtual Apache mirip dengan blok server Nginx. Setiap virtual host akan memiliki detail konfigurasi untuk satu host. Anda dapat memiliki host virtual sebanyak yang Anda inginkan.
Dalam contoh ini, kita akan menggunakan domain site1.citizix.com
untuk virtual host tetapi bebas menggunakan domain pilihan Anda. Harap perhatikan bahwa DNS untuk domain yang akan digunakan harus sudah dikonfigurasi untuk menunjuk ke alamat IP server.
Konfirmasi dengan:
dig -t A site1.citizix.com
Membuat direktori dan contoh konten
Halaman default Apache dikonfigurasi sebagai host virtual default yang menyajikan konten dari /var/www/html
. Ini adalah praktik terbaik untuk membuat direktori situs Anda di /var/www
direktori karena ini adalah praktik terbaik untuk melayani dari sana.
Mari buat direktori untuk situs kita dengan perintah berikut:
sudo mkdir /var/www/site1.citizix.com
Mari kita buat index.php
sederhana halaman untuk melayani dari situs kami. Anda perlu menginstal vim agar ini berfungsi, jika tidak gunakan perintah ini:
sudo apt install -y vim
Edit filenya:
sudo vim /var/www/site1.citizix.com/index.php
Tambahkan konten ke file:
<?php phpinfo(); ?>
Terakhir, pastikan bahwa$USER
pengguna memiliki direktori situs:
sudo chown -R $USER:$GROUP /var/www/site1.citizix.com
Membuat host virtual
File Apache Virtual host menentukan konfigurasi setiap situs dan memberi tahu server web Apache cara merespons berbagai permintaan domain.
Konfigurasi Apache akan disimpan di direktori /etc/httpd/conf.d/
. Mari kita buat konfigurasi untuk situs kita:
sudo vim /etc/apache2/sites-available/site1.citizix.com.conf
Tambahkan konten berikut:
<VirtualHost *:80>
ServerName site1.citizix.com
ServerAlias site1.citizix.com
DocumentRoot /var/www/site1.citizix.com
DirectoryIndex index.php
ErrorLog /var/log/apache2/site1.citizix.com.error.log
CustomLog /var/log/apache2/site1.citizix.com.requests.log combined
</VirtualHost>
Ini akan memberi tahu Apache hal berikut:
ServerName
danServerAlias
– nama host yang akan dilayaniDocumentRoot
– di mana menemukan root secara langsung yang menyimpan dokumen web yang dapat diakses publikDirectoryIndex
– File yang akan dilayani apache saat situs diaksesErrorLog
– tempat menyimpan log kesalahan untuk situs iniCustomLog
– tempat menyimpan log permintaan untuk situs tertentu ini
Simpan dan tutup file setelah Anda selesai
Aktifkan situs
$ sudo a2ensite site1.citizix.com
Enabling site site1.citizix.com.
To activate the new configuration, you need to run:
systemctl reload apache2
Kemudian muat ulang konfigurasi Apache2
sudo systemctl reload apache2
Menguji Host Virtual
Sekarang konfigurasi sudah siap, kita perlu menguji apakah semuanya berfungsi seperti yang diharapkan. Karena kami membuat index.php
file di atas, izinkan kami mengaksesnya dengan membuka http://server_url/
. Dalam kasus saya ini adalah http://site1.citizix.com/
. Anda akan melihat halaman info php.
Kesimpulan
Dalam panduan ini, kami berhasil menyiapkan Apache untuk melayani situs PHP di server Debian 11.