2017-05-14 1 views
0

컨트롤러에서 번들을 생성하려고합니다. 하지만 오류가 거부되었습니다. 그리고 나는 이유를 알 수 없다.경고 : mkdir() : 사용 권한이 거부되었습니다. 번들

$app = new \Symfony\Bundle\FrameworkBundle\Console\Application($this->get("kernel")); 
    $app->setAutoExit(false); 

    $input = new \Symfony\Component\Console\Input\ArrayInput(array(
     "command"=>"generate:bundle", 
     "--namespace"=>"testNewAnBundle", 
     "-n"=>"" 
    )); 

    $out = new \Symfony\Component\Console\Output\BufferedOutput(); 

    $app->run($input, $out); 
    return new Response("<body>".$out->fetch()."</body>"); 

출력은 다음과 같습니다 : 여기

내 컨트롤러 코드

Bundle generation > Generating a sample bundle skeleton into app/../src/testNewAnBundle [Symfony\Component\Debug\Exception\ContextErrorException] Warning: mkdir(): Permission denied generate:bundle [--namespace NAMESPACE] [--dir DIR] [--bundle-name BUNDLE-NAME] [--format FORMAT] [--shared] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-s|--shell] [--process-isolation] [-e|--env ENV] [--no-debug] [--] 

이 폴더 testNewAnBundle/SRC에서/및 폴더 testNewAnBundle를 생성/testNewAnBundle.php 및 컨트롤러/DefaultController있다 .php 파일이 생성되었습니다.

경로 testNewAnBundle/* permision은 다음과 같습니다

drwxrwxrwx+ www-data www-data testNewAnBundle 
drwxrwxrwx+ 2 www-data www-data 4096 mai 14 16:13 Controller 
-rw-rw-rw- 1 www-data www-data 125 mai 14 16:13 testNewAnBundle.php 

답변

1

는 사용자 모드 (안 루트)

HTTPDUSER = ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1

sudo는 setfacl 명령 -R에서 ACL 명령 줄을 사용 할 수 있음 -mu : "$ HTTPDUSER": rwX -mu : whoami : rwX var

sudo setfacl -dR -mu : "$ HTTPDUSER": rwX -mu : whoami : rwX var

+0

정보 :'ps axo user, comm | grep -E 'pache | [h] ttpd | [_] www | [w] ww-data | [n] ginx'| grep -v root | head -1'은'www-data Apache'와 같은 것을 반환합니다. 공간을주의하십시오. '\'는 없습니다. 그래서'cut -d \ -f1' 구분 기호'\'는 작동하지 않습니다. – user3502626

관련 문제