J'utilise Ubuntu 14.04 sur ma machine. J'ai installé composer puis laravel à la racine du document, à savoir / var/www
J'ai également donné la persmission du dossier -R 777 dans le dossier laravel présent dans le répertoire / var/www.
Ensuite, je vais dans le répertoire laravel en utilisant cd/var/www/laravel et lance la commande suivante php artisan.
Puis j'ai tapé php clé artisanale: générer et j'ai eu l'erreur
[ErrorException] file_get_contents(/var/www/laravel/.env): failed to open stream: No such file or directory
Ici, je suis coincé, quelqu'un peut-il m'aider, s'il vous plaît, à cet égard?
Merci.
Renommez .env.example
en .env
dans votre dossier racine Laravel.
Le fichier .env
n'est pas encore présent car vous devez d'abord le créer et le configurer.
Faire ce qui suit
# Navigate to the correct folder
$ cd /var/www/laravel
# Copy the example file to make a .env file
$ cp .env.example .env
# Set the parameters
$ vi .env
Renommez .env.example en .env et remplissez toutes les propriétés . https://laravel.com/docs/5.0/configuration#environment-configuration
Vous avez probablement manqué votre fichier .env
dans le dossier du projet laravel. Créez donc le fichier .env.example
en .env
Indiquez également la connexion de base de données requise.
.env
file ressemble à ceci: (Remplissez avec la connexion de base de données requise)
APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
APP_URL=http://localhost
DB_Host=127.0.0.1
DB_PORT=3306
DB_DATABASE=Homestead
DB_USERNAME=Homestead
DB_PASSWORD=secret
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_Host=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_Host=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
J'espère que cela vous aidera. Merci.
Si, comme moi, vous avez avez un fichier .env
, vous pouvez constater qu'il dispose d'autorisations trop restrictives pour permettre à votre utilisateur actuel de l'écrire (et par conséquent, la commande php artisan que votre utilisateur actuel tente d'exécuter ). J'avais changé tous mes fichiers Laravel pour qu'ils appartiennent à www-data:www-data
et fais de mon utilisateur actuel un membre du groupe www-data
, et j'étais donc un peu dérouté par cette erreur.
Cependant, je me suis vite rendu compte que mon fichier .env
avait les autorisations suivantes:
-rw-r--r--
... signifiant que l'utilisateur qui possède le fichier est lu, écrit, mais que le groupe et le monde ne peuvent que lire. Étant donné que mon utilisateur actuel est membre du groupe group www-data
, il ne peut que lire, pas écrire.
(Vous pouvez vérifier les permissions de votre fichier en faisant $ ls -la
)
Si vous avez la même situation, vous avez deux choix; desserrez les autorisations de fichier sur ce fichier (avec chmod
) ou utilisez Sudo
pour exécuter vos commandes php artisan. J'ai choisi ce dernier, car il s'agit d'un serveur de production pour moi et j'aime les autorisations restreintes.