Home 게시판 커뮤니티 Q&A 워드프레스 파일&디렉토리 소유권 설정

3개 답변, 3 voices Last updated by Avatar of Jeong DaehoJeong Daeho 9 years, 9 months 전
  • Avatar of Jeong DaehoJeong Daeho
    Participant
    @ohead
    #26506

    일반 적으로 워드프레스를 설치 할경우에

    ftp 와 아파치 권한에 따른 문제가 있습니다.

    카페 24 같은경우는 계정별로 아파치가 구동 되는 것같은데 .

    이방법이 옳은 방법인지도 궁금하구요.

    권한 관련 질문에 가장 흔한 답변이 디렉 토리 권한을 낮춰서 해결하라고 답변을 많이 주시는 것 같아요.

    소유권 변경없이 권한만 변경해서 해결하는건 보안 상에 문제가 있을 것같은데 ..

    예를 들어서

    아파치가 httpd 권한으로 실행되고 ftp 계정이 ftpid라고 할때

    미디어 업로드로 올려진 파일은 httpd 권한이 되는 것 같습니다. (nobody 나 apache 일경우도 있구요)

    이 경우에 미디어 업로드로 올려진 파일을 ftpid로 수정 및 삭제를 할 수가 없는데.

    명확히 어떻게 해야 되는지 궁금해요.

    http://codex.wordpress.org/Changing_File_Permissions 을 읽어봤는데 명확하게 이해가 가지 않습니다.

    모든 파일이 ftpid의 소유권일 경우 media upload로 파일 업로드가 불가능 하지 않나 싶구요.

    일일이 디렉토리나 파일의 소유권이나 권한을 변경하는 방법외에 다른 방법이 있지 않을까 생각됩니다.

    일부 업체는 아파치 를 ftp 계정으로 구동 하는 것같던데 ..아무래도 이건 한참 잘못 된 것 같구요(개인적인 생각입니다.)

    Avatar of DevssayDevssay
    Keymaster
    @세이군
    #26508

    userid가 ftpid이고 사이트 주소가 ftpid.mydomain.com 일때 Apache 설정으로 ftpid.mydomain.com에 접근할 때 생성되는 프로세스는 ftpid 아이디로 동작하도록 설정할 수 있습니다. 메인 Apache 프로세스는 nobody로 동작중입니다.

    suexec 환경에서는 ftpid로 운영중인 사이트에서 파일을 올리면 ftpid 소유의 파일로 생성됩니다.
    이 경우에는 소유권 변경이나 권한 변경이 필요없게 됩니다.

    ———-
    워드프레스 퍼미션의 설정은 파일은 모두 644, 디렉토리는 755로 두고 wp-content폴더와 wp-content/uploads 폴더만 777로 두시면 그리 큰 문제없이 사용하실 수 있습니다.

    Avatar of 082net082net
    Keymaster
    @082net
    #26515

    그렇죠… (리눅스의 경우) 서버 관리자라면 uploads 폴더의 권한을

    chown -R {username}:apache uploads/

    find ./uploads/ -type d -exec chmod 2775 {} \;

    find ./uploads/ -type f -exec chmod 664 {} \;

    이렇게 사용자와 apache 모두에게 쓰기 권한을 주면 되긴 하겠지만, 호스팅을 이용하는 중이라면 이게 어려우니 결국에는 uploads 폴더 권한을 777로 맞추는 수 밖에는 없겠네요.

    대신 내부의 폴더나 파일들 까지 777 이나 666으로 하지는 않는게 좋다고 봅니다. (이미 내부 폴더들은 apache가 생성한 것들로 쓰기가 가능한 상태)

    uploads/ 내부의 파일이나 폴더를 삭제하고 싶을때는 간단한 php 파일을 만들어서 unlink 등의 함수를 이용해서 apache가 삭제하게 한다면 문제가 없을거에요.

    사실 좀 더 정확하게 이야기 하자면 php가 실행되는 USER가 apache 일 경우이고, php가 다른 user로 실행된다면 그에 따라 달라지게 되겠죠.

    이야기가 딴데로 좀 샜네요.

    즉, uploads 폴더에는 ‘사용자’가 미디어를 업로드 하는게 아니라 PHP 가 업로드 하는 것이므로 사용자만 쓰기가 가능해서는 업로드가 불가능합니다. 따라서 PHP도 쓸 수 있도록 ‘777’(모두가 쓸 수 있는)로 맞춰 주시는 것입니다.

    Avatar of 082net
    Facebook 사용자 모임 그룹 도 함께 운영되고 있으며, 격 주로 미트업과 스터디를 진행하고 있으니 관심 있으신 분들의 많은 참여 바랍니다 🙂
    Avatar of Jeong DaehoJeong Daeho
    Participant
    @ohead
    #26517

    답변 감사합니다.

    명확히는 이해가 가질 않았지만.

    어느정도 가닥이 잡히는 것 같습니다.

    나머지는 테스트 해보면서 정리하면 될 것 같습니다.

    🙂

4 글 보임 - 1에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.