2015-08-15 103 views
1

我可以用composer安装laravel 5.0,没有任何问题。但是当我尝试安装laravel 5.1时,我被拒绝了权限。Laravel 5.1从作曲家问题安装 - 权限被拒绝

这是我所得到的,如果我跑:

composer create-project laravel/laravel MyProjectName 

Installing laravel/laravel (v5.1.4) 
    - Installing laravel/laravel (v5.1.4) 
    Loading from cache 

Created project in schoollege 
> php -r "copy('.env.example', '.env');" 
Loading composer repositories with package information 
Installing dependencies (including require-dev) 
    - Installing vlucas/phpdotenv (v1.1.1) 
    Loading from cache 

    - Installing symfony/var-dumper (v2.7.3) 
    Loading from cache 

    - Installing symfony/translation (v2.7.3) 
    Loading from cache 

    - Installing symfony/routing (v2.7.3) 
    Loading from cache 

    - Installing symfony/process (v2.7.3) 
    Loading from cache 

    - Installing psr/log (1.0.0) 
    Loading from cache 

    - Installing symfony/debug (v2.7.3) 
    Loading from cache 

    - Installing symfony/http-foundation (v2.7.3) 
    Loading from cache 

    - Installing symfony/event-dispatcher (v2.7.3) 
    Loading from cache 

    - Installing symfony/http-kernel (v2.7.3) 
    Loading from cache 

    - Installing symfony/finder (v2.7.3) 
    Loading from cache 

    - Installing symfony/dom-crawler (v2.7.3) 
    Downloading: 100%   



    [ErrorException]                                 
    copy(/home/myusername/.composer/cache/files/symfony/dom-crawler/9dabece63182e95c42b06967a0d929a5df78bc35.zip): failed to open stream: Permission denied                                   



create-project [-s|--stability="..."] [--prefer-source] [--prefer-dist] [--repository-url="..."] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--keep-vcs] [--no-install] [--ignore-platform-reqs] [package] [directory] [version] 

/var/www/html文件夹内这样做。该/var/www文件夹在www-data组已经上市www-data有权限drwxrwxr-x

解决方案我试过,但没有他们的工作:

  • 作曲家clearcache
  • 作曲家创建项目laravel/laravel MyProjectName 5.1
  • 作曲家自我更新

什么可能是我可能的ssue?

P.S:我在Ubuntu 14.04 LTS x64位架构上使用LAMP。

回答

1

当您运行artisan命令时,您不是作为www-data用户运行,而是作为您的用户运行。如果您的用户不是root,你应该sudo执行该命令,或者su www-data,或者(更好的),您可以将您的用户名添加到WWW的数据组,就像这样:

sudo useradd -g www-data youruser 

希望它能帮助。 ;)

0

由于作曲家已经过半在“权限被拒绝”的地步,你需要先清除缓存以下拉斐尔的指令:

php artisan cache:clear 
composer dump-autoload 

(从https://stackoverflow.com/a/24369509/1627732

,然后做:

sudo useradd -g www-data yourusername