Начиная с laravel на ubuntu

Я пытаюсь использовать laravel как фреймворк PHP, я уже извлек zar laravel в ~/opt/xampp/htdocs/laravel, но когда я перехожу к localhost/laravel или localhost/laravel, я получаю сообщение об ошибке 403:

Доступ запрещен!

У вас нет разрешения на доступ к запрашиваемому объекту. Он либо защищен от чтения, либо не читается сервером.

Я где-то читал, что мне нужно отредактировать папку storage внутри laravel, чтобы ее можно было читать и записывать, поэтому я chmod -R 766 laravel/storage, но мне все же не повезло, я делаю это из Ubuntu 12.04, кто-нибудь столкнулся с этим?

РЕДАКТИРОВАТЬ
У меня есть chmod -R 0+w laravel/storage, и теперь, когда я перехожу к localhost/laravel, я получаю индекс некоторых файлов там, но когда я иду на localhost/laravel/public/, все еще получаю ошибку 403 вместо ожидаемого результата

РЕДАКТИРОВАТЬ 2
Я установил chmod -R 765 laravel/public, и теперь, когда я доберусь до localhost/laravel/public, я получаю это сообщение, которое заставляет меня поверить, что я становлюсь ближе:

Предупреждение: require (/opt/lampp/htdocs/learning-laravel/laravel/laravel.php): не удалось открыть поток: разрешение отклонено в /opt/lampp/htdocs/learning -laravel/public/index.php on строка 34

Неустранимая ошибка: require(): Требуется неудачное открытие '/opt/lampp/htdocs/learning-laravel/laravel/laravel.php' (include_path = '.:/opt/lampp/lib/php') в /opt/lampp/htdocs/learning -laravel/public/index.php в строке 34

Ответ 1

Окончательное обновление
Я, наконец, решил, что произошло то, что папка laravel была защищена от чтения, мне нужно было установить chmod 755 -R laravel, а затем chmod -R o+w storage и voila, у меня был larvel и работает, благодаря всем, кто внес вклад.

Ответ 2

для начала запуска с laravel, я просто делаю следующие шаги:

sudo chmod -R 770 /your/path/to/laravel/folder/

затем добавьте группу www-data в ваш laravel

sudo chgrp -R www-data /your/path/to/laravel/folder/

Ответ 3

На правильном пути, после установки laravel, вам необходимо убедиться, что каталог хранения имеет правильные разрешения:

sudo chmod o+w storage 

Затем убедитесь, что вы обслуживаете свою общую папку, а не папку larvel в apache document root

<VirtualHost *:80>
    DocumentRoot /Users/JonSnow/Sites/MySite/public
    ServerName mysite.dev
</VirtualHost>

Оба требования описаны здесь

Ответ 4

На форуме Laravel Kaspien дал следующие полезные ответы:

У вас есть chmod 777, но только в папке хранения/представлений, чтобы использовать лезвие, которое, как представляется, является механизмом представления, используемым по умолчанию видом Laravel. Я обычно chmod 777 все папки хранения /* на новой установке Laravel, прежде чем я начну проект, так как они должны быть доступны для записи для просмотров, сеансов и т.д.

Из потока: http://forums.laravel.com/viewtopic.php?id=1552

Ответ 5

Измените права на папки хранения и начальной загрузки, например

sudo chmod -R 777 ./storage ./bootstrap

Ответ 6

В файле .htaccess:

RewriteRule ^index.php(.*)$ /public/index.php [L]