"미디어위키 업로드 가능하게 하기"의 두 판 사이의 차이

(사용자 2명의 중간 판 26개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{테스트|미디어위키 1.18.0, 리눅스}}
{{테스트|미디어위키 1.18.0, 리눅스}}
;미디어위키 업로드 가능하게 하기
;미디어위키 업로드 설정
;미디어위키 업로드 폴더 권한 문제


==설정파일 변경==
==설정파일 변경==
19번째 줄: 22번째 줄:
$wgEnableUploads  = true;
$wgEnableUploads  = true;
</source>
</source>
이렇게 하면 왼쪽 메뉴의 도구모음에 '파일 올리기'가 생겼을 것이다.
이렇게 파일을 수정하고 웹사이트를 열면 왼쪽 메뉴의 도구모음에 '파일 올리기'가 보일 것이다.


==폴더 권한==
==폴더 권한==
파일 올리기가 안되는 경우 설치폴더 아래의 images 폴더의 권한을 확인하고, 업로드가 가능하도록 권한을 조정한다.
파일 올리기가 안되는 경우 설치폴더 아래의 images 폴더의 권한을 확인하고, 업로드가 가능하도록 권한을 조정한다.
*[[미디어위키 폴더]]로 이동하여 images의 소유자와 퍼미션 확인
<source lang='console'>
[root@zetawiki w]# ll -d images
drwxr-xr-x  2 root root  4096 Jul  8  2011 images
</source>
:→ 특별히 건드리지 않았다면 위와 같이 소유자는 root, 퍼미션은 755일 것이다.


 
*[[httpd]] 프로세스의 owner를 확인해보자.
===755===
<source lang='console'>
*초기상태
[root@zetawiki w]# ps -ef | grep httpd | grep -v grep
<source lang='dos'>
root    26460    1  0 01:37 ?        00:00:00 /usr/sbin/httpd
[root@jmnote wiki]# ll | grep images
apache  28239 26460  0 04:02 ?        00:00:48 /usr/sbin/httpd
drwxr-xr-x 2 1244 1244  4096 Jul  8  2011 images
apache  28240 26460  0 04:02 ?        00:00:49 /usr/sbin/httpd
apache  28241 26460  0 04:02 ?        00:00:47 /usr/sbin/httpd
... (생략)
apache  31072 26460  0 04:22 ?        00:00:48 /usr/sbin/httpd
</source>
:→ 부모 프로세스는 1개 있고 root 권한으로, 자식 프로세스는 여러 개 있고 apache 권한으로 실행된다.
:→ httpd가 파일에 접근할 때는 apache 권한을 가지게 된다.
따라서 image 폴더의 소유자를 apache로, 퍼미션을 700으로 해보자.<ref>apache 계정만 자유롭게 읽고 쓸 수 있게 함</ref>
<source lang='console'>
[root@zetawiki w]# chown -R apache:apache images
[root@zetawiki w]# chmod -R 700 images
[root@zetawiki w]# ll -d images
drwx------ 22 apache apache 4096 Sep 2 22:38 images
</source>
</source>
*미디어위키에서 업로드시 오류 메시지
:The upload directory (public) is not writable by the webserver.


===775===
==같이 보기==
<source lang='dos'>
* [[미디어위키 업로드 파일 확장자]] (확장자 문제)
[root@jmnote wiki]# chmod 775 images
* [[미디어위키 $wgEnableUploads]]
[root@jmnote wiki]# ll | grep images
* [[미디어위키 파일 업로드 최대 크기 지정]]
drwxrwxr-x  2 1244 1244  4096 Jul  8  2011 images
</source>
*미디어위키에서 업로드시 오류 메시지
:The upload directory (public) is not writable by the webserver.


===777===
==참고==
<source lang='dos'>
[root@jmnote wiki]# chmod 777 images
[root@jmnote wiki]# ll | grep images
drwxrwxrwx  4 1244 1244  4096 Jan 25 11:22 images
</source>
*업로드 성공


[[분류:미디어위키]]
[[분류: 미디어위키 업로드]]

2019년 11월 21일 (목) 18:58 판

미디어위키 업로드 가능하게 하기
미디어위키 업로드 설정
미디어위키 업로드 폴더 권한 문제

1 설정파일 변경

미디어위키를 처음 설치했을 때는 업로드가 불가능하게 되어 있다. 왼쪽 도구모음 메뉴에 '파일 올리기'가 없을 것이다. 설치폴더에 있는 LocalSettings.php에서 $wgEnableUploads를 true로 해주면 나타난다.

  • 변경 전
## To enable image uploads, make sure the 'images' directory
## is writable, then set this to true:
$wgEnableUploads  = false;
  • 변경 후
## To enable image uploads, make sure the 'images' directory
## is writable, then set this to true:
$wgEnableUploads  = true;

이렇게 파일을 수정하고 웹사이트를 열면 왼쪽 메뉴의 도구모음에 '파일 올리기'가 보일 것이다.

2 폴더 권한

파일 올리기가 안되는 경우 설치폴더 아래의 images 폴더의 권한을 확인하고, 업로드가 가능하도록 권한을 조정한다.

[root@zetawiki w]# ll -d images
drwxr-xr-x  2 root root   4096 Jul  8  2011 images
→ 특별히 건드리지 않았다면 위와 같이 소유자는 root, 퍼미션은 755일 것이다.
  • httpd 프로세스의 owner를 확인해보자.
[root@zetawiki w]# ps -ef | grep httpd | grep -v grep
root     26460     1  0 01:37 ?        00:00:00 /usr/sbin/httpd
apache   28239 26460  0 04:02 ?        00:00:48 /usr/sbin/httpd
apache   28240 26460  0 04:02 ?        00:00:49 /usr/sbin/httpd
apache   28241 26460  0 04:02 ?        00:00:47 /usr/sbin/httpd
... (생략)
apache   31072 26460  0 04:22 ?        00:00:48 /usr/sbin/httpd
→ 부모 프로세스는 1개 있고 root 권한으로, 자식 프로세스는 여러 개 있고 apache 권한으로 실행된다.
→ httpd가 파일에 접근할 때는 apache 권한을 가지게 된다.

따라서 image 폴더의 소유자를 apache로, 퍼미션을 700으로 해보자.[1]

[root@zetawiki w]# chown -R apache:apache images
[root@zetawiki w]# chmod -R 700 images
[root@zetawiki w]# ll -d images
drwx------ 22 apache apache 4096 Sep  2 22:38 images

3 같이 보기

4 참고

  1. apache 계정만 자유롭게 읽고 쓸 수 있게 함
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}