skip to Main Content

Information :

Php version 7.1

All extensions installed :

OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
XML PHP Extension

Tried running :

composer dump-autoload
composer clear-cache
artisan clear:cache
 artisan config:Cache

Error in error log :

PHP Parse error: syntax error, unexpected ‘class’ (T_CLASS),
expecting identifier (T_STRING) or variable (T_VARIABLE) or ‘{‘ or ‘$’
in /home/username/laravel/public/index.php on line 50

When visiting site : HTTP ERROR 500

Any ideas?

EDIT 1:

Content of public/index.php

<?php

/**
 * Laravel - A PHP Framework For Web Artisans
 *
 * @package  Laravel
 * @author   Taylor Otwell <[email protected]>
 */

/*
|--------------------------------------------------------------------------
| Register The Auto Loader
|--------------------------------------------------------------------------
|
| Composer provides a convenient, automatically generated class loader for
| our application. We just need to utilize it! We'll simply require it
| into the script here so that we don't have to worry about manual
| loading any of our classes later on. It feels great to relax.
|
*/

require __DIR__.'/../bootstrap/autoload.php';

/*
|--------------------------------------------------------------------------
| Turn On The Lights
|--------------------------------------------------------------------------
|
| We need to illuminate PHP development, so let us turn on the lights.
| This bootstraps the framework and gets it ready for use, then it
| will load up this application so that we can run it and send
| the responses back to the browser and delight our users.
|
*/

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

/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/

$kernel = $app->make(IlluminateContractsHttpKernel::class);

$response = $kernel->handle(
    $request = IlluminateHttpRequest::capture()
);

$response->send();

$kernel->terminate($request, $response);

?>

How i installed laravel :

Logged in through SSH to server. cd /home/username/

// Download composer & install & unistall

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

// Download laravel

/opt/cpanel/ea-php71/root/usr/bin/php /home/username_here/composer.phar create-project --prefer-dist laravel/laravel

// Create soft link

rm -rf public_html
ln -s laravel/public/ public_html


// Change ownership permissions 

chown -R username_here:username_here /home/username_here/laravel
chown -R username_here:username_here /home/username_here/public_html

// Generate a key 

/opt/cpanel/ea-php71/root/usr/bin/php /home/username_here/laravel/artisan key:generate

Server uses MultiPHP Manager so in order to use php version 7.1 i have to use the selected php version (/opt/cpanel/ea-php71/root/usr/bin/php)

3

Answers


  1. Chosen as BEST ANSWER

    The solution was to contact with my hosting provider and change the PHP Version to >= 5.6.4 .


  2. My be web server using my old PHP version 5. To solve it try

    sudo a2dismod php5
    sudo a2enmod php7.0
    sudo service apache2 restart

    Login or Signup to reply.
  3. You have problem with your index.php file

    require __DIR__.'/../bootstrap/autoload.php';
    

    In this line you have to replace this bootstrap with vendor because laravel 5.6 store autoload file in the vendor folder not in bootstrap folder

    Please remove bootstrap and add vendor and run composer dump-autoload command than try to access 🙂

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search