Search code examples
phpapache.htaccessubuntumod-rewrite

Getting a 500 Internal Server Error (require() failed opening required path) on Laravel 5+ Ubuntu 14.04


I have installed Laravel many times on Windows OS but never had this problem.

However, on Ubuntu 14.04 I am getting a 500 Internal Server Error, and messages like this in my logs:

[Wed Jul 22 10:20:19.569063 2015] [:error] [pid 1376] [client 127.0.0.1:52636] PHP Fatal error: require(): Failed opening required '/var/www/html/laravel_blog/../bootstrap/autoload.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/html/laravel_blog/index.php on line 22

Previously I've had problems when mod_rewrite was not installed or set up properly, but I have installed it and it is not working. Changed .htaccess as well from original to this.

    +FollowSymLinks
RewriteEngine On

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

I've given access to all my folders and files inside i.e.

/var/www/html/laravel_project

I have all the necessary extensions needed for Laravel 5+ as well. Is there something left that I didn't do?


Solution

  • Finally Overcame the problem

    • It was not the .htaccess file that was the problem nor the index.php. The problem was on accessing the files and requiring permissions.

    For solving the problem i ran the following commands through terminal.

    sudo chmod -R 755 laravel_blog
    

    and then type below to allow laravel to write file to storage folder

    chmod -R o+w laravel_blog/storage
    

    This two commands solved the problem.