DokuWiki

It's better when it's simple

사용자 도구

사이트 도구


ko:install:permissions

파일 권한(permission) 설정

DokuWiki는 자신의 데이타를 일반 텍스트 파일의 형태로 저장합니다. 파일을 저장하기 위해서는 PHP 프로세스를 실행하는 DokuWiki 스크립트가 파일들에 대한 쓰기가 가능해야 합니다. PHP 프로세스는 보통 웹 서버의 권한을 가지고 실행하기 때문에 웹 서버는 이 파일들에 쓰기가 가능해야 합니다.

일반적으로 DokuWiki는 모든 저장되는 파일들을 data 디렉토리 아래에 저장합니다. 설치자와 환경설정을 위해서는 conf 디렉토리 안의 파일들에 대해서도 역시 쓰기가 가능해야 합니다.

윈도우즈 서버

만일 DokuWiki를 윈도우즈 서버에서 운용한다면 아마도 파일권한(퍼미션)에 대해서 생각할 필요가 없을 것입니다.

FIXME 진짜인가요? 최신 윈도우즈 시스템에서는 “오른쪽 클릭→속성→접근 속성”같이 설정할 것이 있는 것같은데요.

NT pro판에서는 맞습니다. 어찌되었든 기본적으로 설정된 '실행'권한은 문제를 일으키지 않습니다.

만일 몇몇 사용자에게만 접근 권한을 주고 싶다면 텍스트 파일들에 대한 보안을 설정할 수 있습니다, IIS를 웹서버로 사용한다면 웹 브라우저를 통해 직접 .txt파일들에 직접 접근하는 것에 신경써야 합니다. 만일 몇 몇 DokuWiki사용자들만 특정 페이지들만 접근하도록 허용하기 위해 ACL을 사용하기 원한다면 IIS가 txt파일을 보여주는 것을 중단시켜야 합니다.(이 서비스를 중단시키기 위해 마이크로소프트에서 제공하는 다운로드 팩이 있습니다.) 아직 새로운 DokuWiki버전에서 테스트를 해보지 못했지만 이전 버전에서 이것은 문제가 되는 부분이었습니다.)

유닉스

Linux, MacOS X, 다른 유닉스 변종들에 DokuWiki를 설치하는 경우 적용됩니다. 대부분의 임대 호스트에 적용될 수 있습니다.

파일 권한(permissions) - 짧은 설명

UNIX 파일 권한에 대해서는 자세히 설명하지 않습니다. 자세한 내용을 보려면 Wikipedia을 보기 바랍니다. 여기서는 단지 짧게 설명하도록 합니다:

  • 파일에 대한 권한은 파일 소유자와 그룹 그리고 파일에 접근하려는 사용자들에게 달려있습니다.
  • 권한은 읽기, 쓰기, 실행으로 나눠집니다.
  • 각 UNIX 프로세스는 OS 사용자와 소속 그룹들의 권한으로 실행됩니다.
  • 웹서버는 일종의 유닉스 프로세스입니다.
  • PHP는 보통 웹서버의 일부분으로 실행됩니다.
  • DokuWiki는 PHP 프로세스의 권한으로 실행됩니다.
  • DokuWiki는 생성하는 파일들이 들어 있는 디렉토리에 대해 읽기/쓰기/실행권한이 필요합니다.
  • DokuWiki는 쓰기가 필요한 파일에 대해 읽기/쓰기 권한이 필요합니다.

PHP 프로세스(웹 서버)가 실행되는 사용자와 그룹을 찾기 위해서, 다음의 PHP 스크립트를 실행해 봅니다:

<?php
 
if(function_exists('posix_geteuid')){
    // use posix to get current uid and gid
    $uid   = posix_geteuid();
    $usr   = posix_getpwuid($uid);
    $user  = $usr['name'];
    $gid   = posix_getegid();
    $grp   = posix_getgrgid($gid);
    $group = $grp['name'];
}else{
    // try to create a file and read it's ids
    $tmp = tempnam ('/tmp', 'check');
    $uid = fileowner($tmp);
    $gid = filegroup($tmp);
 
    // try to run ls on it
    $out = `ls -l $tmp`;
    $lst = explode(' ',$out);
    $user  = $lst[2];
    $group = $lst[3];
    unlink($tmp);
}
 
echo "Your PHP process seems to run with the UID $uid ($user) and the GID $gid ($group)\n"; ?>

권한을 어떻게 설정해야 합니까?

위에서 언급된 디렉토리에 대한 권한을 어떻게 설정해야 할까요? 일반적으로 되도록 권한은 제한하는 쪽으로 설정해야 합니다. 그러나 자신의 시스템을 위해 권한을 설정하는 경우에는 일반적이라고 잘라 말할 수는 없습니다.

만일 루트(슈퍼 유저 권한)사용자라면 파일과 디렉토리의 소유자를 바꿀 수 있습니다. DokuWiki 파일들의 소유자를 웹 서버 사용자(예. www-data또는 nobody)로 바꿀 수 있고 웹 서버만 접근할 수 있도록 권한을 부여할 수 있다는 것을 의미합니다. (예. 파일에 대해서는 0600, 디렉토리에 대해서는 0700)

만일 일반 사용자라면 아마 웹 서버 그룹의 멤버일지도 모르며 파일들을 이 그룹에 속하도록 바꿀 수 있을 것입니다. 그 후 파일과 디렉토리는 이 그룹에 의해 쓰기 가능하도록 설정합니다.(예. 파일에 대해서는 0660, 디렉토리에 대해서는 0770) 만일 서버를 혼자 쓰거나 완전히 보안에 대해 신뢰가 가능한 환경에서 Wiki를 운영한다면 단순히 모든 사람이 접근가능하도록 권한을 부여할 수 있습니다. (예. 파일에 대해서는 0666, 디렉토리에 대해서는 0777)

공유된 웹서버에서 운영을 한다면, 웹서버 관리자나 호스팅 지원처에 연락해서 도움이나 요구 사항에 대해 문의를 해야합니다. 그들에게 이페이지를 보여주고 어떤 것이 필요로한지 알도록해야 합니다.

주의: 디렉토리에 대한 정확한 설정을 찾았다면 fmode옵션과 dmode옵션이 이 설정들을 반영하도록 변경해야합니다.

권한을 설정하는 방법?

명령어 행에서 권한을 변경하기 위해 chmod을 사용합니다, 파일과 디렉토리 소유자를 바꾸려면 chown, 그룹을 바꾸려면 chgrp을 사용합니다.

FTP를 통해 서버에 접근한다면 FTP 툴의 설명서를 보기 바랍니다. 대부분의 GUI FTP 툴들은 권한을 설정할 수 있는 대화상자를 가지고 있습니다.(종종 오른쪽 클릭해서 나오는 문맥 감지형 메뉴에서 찾을 수 있습니다.)

번역

english version: dokuwiki-2006-11-06.

Add your email here if you created translated or modified whole or part of this page.

  • jk Lee - real mail domain is gmail, not zoo.com for spam filtering 2007-2-8 created
ko/install/permissions.txt · 마지막으로 수정됨: 2018-07-11 19:58 저자 kimhz2001

별도로 명시하지 않을 경우, 이 위키의 내용은 다음 라이선스에 따라 사용할 수 있습니다: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki