So, you want to start developing with the Laravel framework for PHP but don’t have a dedicated server or the desire to use something like Digital Ocean and Laravel Forge. Maybe you already have a cPanel account on a shared server and don’t want to pay for another environment to develop in. Well guess what? You can setup Laravel inside your cPanel environment fairly easily!
First things first, we need to make sure we have shell access enabled on our cPanel account. If you don’t have this, you will need to contact your host and have them enable it for you.
Next we need to SSH into our cPanel server and install Composer. Start by changing your directory to /bin and downloading Composer.
cd /bin wget https://getcomposer.org/installer
Note: Depending on your server configuration, you may need to use
sudo wget https://getcomposer.org/installerinstead
Before installing let’s check our compatibility:
php installer --check All settings correct for using Composer
If everything looks good let’s install Composer:
php installer Downloading... Composer successfully installed to: /bin/composer.phar Use it: php composer.phar
Now that Composer is installed, we can delete the installer file:
rm -f installer
Note: If you logged in as root to install Composer make sure you switch back on the cPanel user account before continuing.
Now that Composer is installed we will use it to install Laravel.
cd into your cPanel user’s directory (one level above public_html) and run the following:
php /bin/composer.phar create-project laravel/laravel --prefer-dist
Composer should now download and install Laravel for you. The last step is to tell the server that incoming traffic should be directed to the
public directory instead of the
public_html directory. We will accomplish this by removing our old
public_html directory and creating a symbolic link. Keep in mind this will permanently remove all the content in your
rm -rf public_html ln -s laravel/public/ public_html
If everything went according to plan you should now be able to visit your site and see the Laravel welcome screen.
All the content on my site is provided for free with the intention of helping others. If you feel like this post helped you, please consider shopping using using my Amazon Link or the links below. There is no additional charge to you and I get a small kickback from any purchase.