I already upload my laravel project folder into cpanel hosting. I did't have VPS. I has read many example in laracast and stackoveflow, but still get this 500 internal error. This is my setting. 

I has separated public folder in my laravel project and put the other in root directory of my hosting like this. 

```
|-- my_other_folder_project/
|-- [some other folders...]
|-- public_html/ 
|   |-- [some other folders...]
|   |-- my_public_project/

```

And Change index.php setting into : 

from 

```
require __DIR__.'/../vendor/autoload.php';

```

to

```
require __DIR__.'/../../my_other_folder_project/vendor/autoload.php';

```

And From 

```
$app = require_once __DIR__.'/../bootstrap/app.php';

```

to 

```
$app = require_once __DIR__.'/../../my_other_folder_project/bootstrap/app.php';

```

I has create .htaccess file for public folder like this : 

```
DirectoryIndex index.php

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

```

My PHP for this is 7.1 and I've checked other requirenment like OpenSSL, PDO, Mbstring, Tokenizer Already installed. 

But Still get this 500 internal server error, I've searching many refference for this but pointed to the step I've already do.