LAMP is a stack of open-source software to provide a fully functional web server environment for various PHP and other web applications. LAMP stands for Linux, Apache, MySQL database (or MariaDB alternatively), and PHP programming language.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related Apache Web Server queries.
In this context, we shall look into how to install LAMP Stack on AlmaLinux 8.
1. Perform System Update
To begin, ensure that your system is up-to-date and then install EPEL with the below command:
$ sudo dnf update
$ sudo dnf install epel-release
2. Install Apache on AlmaLinux 8
Now, Run the following command to install the Apache webserver:
$ sudo dnf install httpd httpd-tools
Once installed Apache services on your system, start all required services:
$ sudo systemctl enable httpd
$ sudo systemctl start httpd
$ sudo systemctl status httpd
Verify that the webserver is running and accessible by accessing your server's IP address:
http://your-server-ipadress
3. Install MariaDB on AlmaLinux 8
MariaDB is a popular database server. The installation is simple and requires just a few steps:
$ sudo dnf install mariadb-server mariadb
Once the installation is complete, start to enable it to start on system start-up using:
$ sudo systemctl restart mariadb
$ sudo systemctl status mariadb
$ sudo systemctl enable mariadb
By default, MariaDB is not hardened. You can secure MariaDB using the mysql_secure_installation script. you should read and below each step carefully which will set a root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB:
$ mysql_secure_installation
Configure it like this:
- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y
To log into MariaDB, use the following command (note that it’s the same command you would use to log into a MariaDB database):
$ mysql -u root -p
4. Install PHP on AlmaLinux 8
PHP is a popular scripting language that powers the dynamic content of millions of websites and apps. Now we run the commands below to install PHP:
$ sudo dnf install php-mysqlnd php-dom php-simplexml php-xml php-curl php-exif php-ftp php-gd php-iconv php-json php-mbstring php-posix
Now restart your web server so that Apache knows that it will be serving PHP requests as well:
$ sudo systemctl restart httpd
To confirm that our web server is accessible and that PHP is working as expected, we can create a file called info.php inside the /var/www/html directory:
$ sudo nano /var/www/html/info.php
Add the following line:
<?php
phpinfo ();
?>
5. Configure Firewall
If you have the default firewalld enabled on AlmaLinux, you’ll have to open up ports 80 and 443 for incoming HTTP and HTTPS connections to your web server:
$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https
$ sudo firewall-cmd --reload