Laravel is an open source PHP framework designed for the faster development of MVC web applications in PHP. This article will help you to install Laravel 8 PHP Framework on CentOS/RHEL 7 system.

Advertisement

Step 1 – Setup Yum Repositories

First of all, you need to add REMI and EPEL rpm repositories in your system. these repositories have updated packages. Use one of the below commands as per your OS version and system architecture.

rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

Step 2 – Install Apache, MySQL and PHP

Here is short instruction for the installation of LAMP stack. Its required to run the Laravel framework on your CentOS system. Use this guide for the detailed LAMP setup on CentOS

Install Apache

yum --enablerepo=remi,epel install httpd

Install MySQL

yum --enablerepo=remi,epel install mysql-server
service mysqld start
/usr/bin/mysql_secure_installation

Install PHP

yum --enablerepo=remi,epel install php php-zip php-mysql php-mcrypt php-xml php-mbstring
service httpd restart

Step 3 – Install Composer

Composer is required for installing Laravel dependencies. So use below commands to download and use as a command in our system.

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

Step 4 – Install Laravel on CentOS 7

To download latest version of Laravel, Use below command to clone master repo of laravel from github.

cd /var/www
git clone https://github.com/laravel/laravel.git

Navigate to the Laravel code directory and use the composer to install all dependencies required for the Laravel framework.

cd /var/www/laravel
composer install

Dependency installation will take some time. After that set proper permissions on files.

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

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

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

Step 5 – Set Encryption Key

Laravel uses a .env file for environment configuration. Use .env file for configuring all the environment variables for your application like the database, SMTP, security key, etc.

cp .env.example .env

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

php artisan key:generate

Application key set successfully.

You can view the .env file to find the Application key that is configured.

Step 6 – Create Apache VirtualHost

Now add a Virtual Host in your Apache configuration file to access Laravel framework from web browser. To do it edit Apache configuration file /etc/httpd/conf/httpd.conf and add below code at end of file

vim /etc/httpd/conf/httpd.conf
File: /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
       ServerName laravel.example.com
       DocumentRoot /var/www/laravel/public

       <Directory /var/www/laravel>
              AllowOverride All
       </Directory>
</VirtualHost>

Restart Apache service and access the Laravel framework using your favorite web browser and start developing a great web application.

service httpd restart

Now access the Laravel website in a web browser.

install laravel on centos

Share.

16 Comments

  1. After all this is done we try to create a laravel project with the command laravel new project name

    But we get -bash: laravel: command not found

    How do we make the laravel command globally available in these steps ?

  2. before step2 do this:
    1. sudo yum-config-manager –disable remi-php54
    2. sudo yum-config-manager –enable remi-php73

    because as default centos enable remi-php73

  3. Here is how I have installed php for laravel

    yum install php php-cli php-common php-gd php-imap php-mbstring php-mysqlnd php-pdo php-pecl-jsonc php-pecl-zip php-xml php-pgsql –enablerepo=epel,remi-php56

Leave A Reply

Exit mobile version