Ao usar laravel no Ubuntu, você deseja configurá-lo das seguintes maneiras, para garantir que você não use ou precise de acesso root para os arquivos criados.
- O local dos projetos criados deve estar na pasta
/var/www/html, mas pode estar em qualquer lugar. - Instale o compositor e configure-o globalmente para que você possa instalar
laravelglobalmente com ele. - As permissões em
/var/www/htmlprecisam ser configuradas de forma que você não precise derootprivileges para operar nos arquivos como no seu caso.
Instalar o Composer:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
Verifique a instalação:
composer -V
Instale laravel usando o compositor:
composer global require "laravel/installer=~1.1"
Verifique a instalação:
laravel -V
Permissões da pasta de configuração para laravel:
-
Configuração temporária em
/var/www/html:-
Adicionar auto ao grupo
www-data:sudo usermod -a -G www-data $USER -
Alterar a propriedade da pasta laravel:
sudo chgrp -R www-data /var/www/html/project -
Dica: para configurar o armazenamento de grandes volumes:
sudo chmod -R 775 /var/www/html/project/storage
-
-
Solução permanente:
-
Torne a propriedade padrão das pastas em
/var/www/html$USER:www-data, portanto, qualquer nova criação assumirá as permissões de seu usuário e do grupo www-datasudo setfacl -d -R -m u:$USER:rwx,g:www-data:rwx,o:rx /var/www/html
-
Agora, basta adicionar qualquer usuário ao grupo www-data para que eles tenham rwx de acesso a qualquer projeto laravel criado em /var/www/html . Uma reinicialização será necessária .
Uso:
laravel new /var/www/html/new-project