Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

J'éssais de faire fonction un nouveau projet laravel dans une nouvelle machine vertuelle qui utilise, php 7.2 et ngnix. Quand je viens afficher mon site web j'ai cette erreur assez claire qui s'affiche :

The stream or file "/var/www/sandbox.test/lakamark/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied

Ce que je veux

L'utlisateur www-user a les permitions au dossier storage. J'ai essayer les commande :

sudo chmod -R 777  /var/www/sandbox.test/lakamark/storage

Ce que j'obtiens

Je vois seulement l'utilisateur Vagrant et non www-data à coté :

[10:22 PM]-[vagrant@sandbox]-[~] 
$ ls -al /var/www/sandbox.test/lakamark
total 188
drwxrwxr-x 1 vagrant vagrant    816 Apr  7 20:22 ./
drwxrwxr-x 1 vagrant vagrant    646 Apr  7 20:21 ../
drwxrwxr-x 1 vagrant vagrant    238 Apr  7 20:21 app/
-rwxrwxr-- 1 vagrant vagrant   1686 Apr  7 20:21 artisan*
drwxrwxr-x 1 vagrant vagrant    136 Apr  7 20:21 bootstrap/
-rwxrwxr-- 1 vagrant vagrant   1477 Apr  7 20:21 composer.json*
-rwxrwxr-- 1 vagrant vagrant 143702 Apr  7 20:22 composer.lock*
drwxrwxr-x 1 vagrant vagrant    510 Apr  7 20:21 config/
drwxrwxr-x 1 vagrant vagrant    204 Apr  7 20:21 database/
-rwxrwxr-- 1 vagrant vagrant    702 Apr  7 20:22 .env*
-rwxrwxr-- 1 vagrant vagrant    651 Apr  7 20:21 .env.example*
-rwxrwxr-- 1 vagrant vagrant    111 Apr  7 20:21 .gitattributes*
-rwxrwxr-- 1 vagrant vagrant    155 Apr  7 20:21 .gitignore*
-rwxrwxr-- 1 vagrant vagrant   1150 Apr  7 20:21 package.json*
-rwxrwxr-- 1 vagrant vagrant   1088 Apr  7 20:21 phpunit.xml*
drwxrwxr-x 1 vagrant vagrant    306 Apr  7 20:21 public/
-rwxrwxr-- 1 vagrant vagrant   3622 Apr  7 20:21 readme.md*
drwxrwxr-x 1 vagrant vagrant    170 Apr  7 20:21 resources/
drwxrwxr-x 1 vagrant vagrant    204 Apr  7 20:21 routes/
-rwxrwxr-- 1 vagrant vagrant    563 Apr  7 20:21 server.php*
drwxrwxr-x 1 vagrant vagrant    170 Apr  7 20:21 storage/
drwxrwxr-x 1 vagrant vagrant    204 Apr  7 20:21 tests/
drwxrwxr-x 1 vagrant vagrant   1292 Apr  7 20:22 vendor/
-rwxrwxr-- 1 vagrant vagrant    549 Apr  7 20:21 webpack.mix.js*

Quand je regarde dans le dossier **var/www/*** les permitions j'ai ceci :

$ ls -al /var/www/
total 12
drwxrwxr-x  4 root     www-data 4096 Apr  7 21:58 ./
drwxr-xr-x 15 root     root     4096 Apr  7 22:01 ../
drwxrwxr-x  2 www-data www-data 4096 Apr  7 21:58 html/
drwxrwxr-x  1 vagrant  vagrant   646 Apr  7 20:21 sandbox.test/

Les utilisateur www-data existe bien. Comment je modifie les permitions pour que j'ai plus cette erreur d'interdiction de modifier le fichier storage. Je suis un peut perdu.

Merci de votre aide.

3 réponses


lakamark
Auteur
Réponse acceptée

Finalement dans le fichier de configuration config.yml j'ai changer cette ligne group:

folder1:
                owner: vagrant
                group: vagrant
                source: /Users/xxx/Desktop/Sites
                target: /var/www/sandbox.test
                sync_type: default

par ceci :

folder1:
                owner: vagrant
                group: www-data
                source: /Users/xxxx/Desktop/Sites
                target: /var/www/sandbox.test
                sync_type: default

J'ai de nouveau accès au site web. merci de votre aide.

Bonjour Lakamark,
Si tu veux garder les droits pour l'utilisateur 'vagrant' tu peux simplement changer le group en mettant 'www-data'
vu que le groupe a les droits rwx ça devrait marcher

sudo chgrp -R www-data sandbox.test
lakamark
Auteur

J'ai toujours la même si je lance la commande que tu as écrit. :

drwxrwxr-x  4 root     www-data 4096 Apr  7 21:58 ./
drwxr-xr-x 15 root     root     4096 Apr  7 22:01 ../
drwxrwxr-x  2 www-data www-data 4096 Apr  7 21:58 html/
drwxrwxr-x  1 vagrant  vagrant   646 Apr  7 20:21 sandbox.test/