不能composer dump-autoload - 文件放内容错误?

时间:2016-10-21 15:47:32

标签: laravel ubuntu laravel-5 composer-php laravel-5.3

我试图:

composer dump-autoload

在Ubuntu 16.04服务器上。

我收到错误:

 file_put_contents(/var/www/example.com/site/vendor/composer/autoload_namespaces.php): failed to open stream: Permission denied

我有:

  1. 将存储目录的权限更改为755
  2. 确保www-data用户具有正确的使用权
  3. 我仍然得到错误。关于修复的任何想法?

2 个答案:

答案 0 :(得分:2)

首先 安装Laravel后,您应该更改某个特定目录的权限。 使用这些命令。

// If your project's directory is owned by root then,
sudo chown -R <username> path_to_laravel_project_directory

// Then change these persmissions (from the root of the laravel project directory)
sudo chmod -R 777 storage/
sudo chmod -R 777 bootstrap/cache/

// At the end please generate your project key
php artisan key:generate

// Now you can use
sudo composer dump-autoload

我希望这有效。

答案 1 :(得分:0)

尝试设置这些权限:

sudo chmod -R 755 bootstrap/cache/
sudo chmod -R 755 vendor/composer
sudo chmod -R 755 storage