Laravel is a powerful, open source PHP web framework, designed for the faster development of web application. It is based on Symfony framework, follows the MVC architectural pattern. At the time of writing this tutorial, Laravel 7.12 is the latest version available.

The Laravel framework also provides a command-line interface (CLI) known as Artisan. It provides helpful commands to perform operations for your application’s.

This article will help you to install Laravel PHP Framework on CentOS 8 systems.

Prerequisites

  • The newly installed system’s follow initial server setup.
  • Shell access with sudo privileges account.

Step 1 – Installing LAMP Stack

First of all, Laravel required LAMP stack to be running LAMP stack on your CentOS 8 system. The systems have already running LAMP stack can skip this step else use the following commands to install it.

Install Apache2

sudo dnf install httpd

Install MySQL

sudo dnf install @mysql
sudo mysql_secure_installation

Install PHP

Laravel requried php 7.2 or higher version. Let’s install PHP on your system using below command.

sudo dnf install php php-curl php-bcmath php-dom php-xml php-mbstring php-json

Step 2 – Installing PHP Composer

Composer is used to create new Laravel applications or installing dependencies for existing application. Run the below commands to download and install PHP composer on your system.

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod  x /usr/local/bin/composer

Step 3 – Create Laravel Application

Next, create a Laravel application using composer package manager. Switch to your projects directory and create Laravel application using “composer create-project laravel/laravel” followed by application name.

cd /var/www
composer create-project laravel/laravel myLaravelApp

The above commands will download the Laravel project files and install all the required dependencies on your CentOS system.

Next, set the 32 bit long random number encryption key, which used by the Illuminate encrypter service.

cd /var/www/myLaravelApp
php artisan key:generate

Application key set successfully.

Step 4 – Access Laravel Application

Run your Laravel application in development environment using php artisan. After that, I’ll tell you how you should deploy it on Apache.

Run the below command from your Laravel application. You can change host to your LAN IP or localhost to restrict access.

php artisan serve --host 0.0.0.0 --port=8000

Access Laravel application using localhost (for local systems) or server IP address and specified port.

How to Install Laravel on CentOS 8 CentOS 8 Laravel PHP PHP Framework

Step 5 – Setup Laravel with Apache

Now add a Virtual Host in your Apache configuration file to access Laravel framework from web browser. To do it create Apache configuration file /etc/httpd/conf.d/laravel.conf and add below code:

sudo vim /etc/httpd/conf.d/laravel.conf

File: /etc/httpd/conf.d/laravel.conf

       ServerName laravel.example.net
       DocumentRoot /var/www/myLaravelApp/public

       
              AllowOverride All
       

Restart Apache service and access the Laravel framework using your favorite web browser.

sudo systemctl restart httpd.service

Now, set the proper permission for the application files and directories.

chown -R apache.apache /var/www/myLaravelApp
chmod -R 755 /var/www/myLaravelApp
chmod -R 755 /var/www/myLaravelApp/storage

SELinux enabled systems also run the below command to allow write on storage directory.

chcon -R -t httpd_sys_rw_content_t /var/www/myLaravelApp/storage

Finally, access your Laravel application in a web browser.

How to Install Laravel on CentOS 8 CentOS 8 Laravel PHP PHP Framework

Conclusion

In this tutorial, you have learned to create a new Laravel application with composer and run on development system. Also deployed laravel on Apache server.