How to solve Error 404 when deploying laravel project to Cpanel?

I'm trying to deploy my laravel (Laravel Framework 7.28.3) to Cpanel, but got a 404 error. I uploaded my project into /public_html, modified the index.php file to point to the correct files (as below). I think there must be some mistake in the index.php file but couldn't figure it out. This is my first time asking my question (after searching for it several times), so hope that I will get the answer!

require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

this is my file structure in File Manager:

file structure in File Manager


  • Update (2023) easy way

    if you have access to terminal you can run this command

    ln -s /laravel/public/* public_html

    This is easy way i found in 2023

    Deploy laravel application in Cpanel

    and change this line

    require __DIR__.'/../folderName/vendor/autoload.php';
    $app = require_once __DIR__.'/../folderName/bootstrap/app.php';

    NOTE : - folderName here is in root where you laravel application stay

    that's it now all your request will come inside public_html folder index.php and this file will include require __DIR__.'/../folderName/vendor/autoload.php; and run laravel application

    Folder structure will look like


    indside index.php

    require __DIR__.'/../laravel/vendor/autoload.php';;
    $app = require_once __DIR__.'/../laravel/bootstrap/app.php'; // here laravel is folder name