오늘은 AjaXplorer로 간단히 웹하드를 구축해보겠습니다. 예전에 용한님이 한번 소개해달라고 하셨는데, 한동안 바쁘다보니 테스트를 해보지 못했습니다. 오늘 드디어 셋팅해보고 잠깐 (30분) 만져본 후 이 글을 올립니다. 그러니까 저는 AjaXplorer에 대해 전혀 모릅니다. 제가 소개해드릴 부분은 지극히 기본적인 부분이니 좀 더 구체적인 튜닝을 원하신다면 구글링 해보시기 바랍니다.

1. 홈페이지

http://www.ajaxplorer.info/wordpress/

일단 홈페이지에서 소스를 다운받으시고

2. 웹서버 구축

웹서버는 윈도우 환경에서 설명드리겠습니다. 기본적으로 IIS에 PHP를 수동으로 설치해도 되겠지만, 초보자 분들에겐 APMSETUP을 추천드립니다. IIS에 PHP를 설치할 경우 손대야 할 부분이 너무 많기 때문입니다. 그에 반해 APMSETUP은 별다른 설정 없이도 바로 사용이 가능하기 때문에 초보자 분들에게 추천합니다.

APMSETUP은 아래 홈페이지에서 다운로드 받으세요.

http://www.apmsetup.com/download.php

3. PHP 설정

APMSETUP을 설치한 후 AjaXplorer 소스를 APM_Setup\htdocs 폴더에 몽땅 복사하시고, 로컬 호스트(127.0.0.1)로 접속해보면 아래와 같은 화면이 뜹니다.


경고 내용이 2가지인데요, 첫번째는 PHP 세션 문제입니다. 이 경고를 해결하시려면...

APM_Setup 폴더에 보면 php.ini 파일이 있는데, 이 파일을 편집하시면 됩니다.

session.save_path =

위 부분이 앞에 세미콜론으로 주석 처리가 되어 있는데요, 세미콜론을 지우고 여기에 PHP 세션 파일을 저장할 경로를 적어주시면 됩니다. 없는 디렉터리를 자동으로 만들어주지는 않기 때문에, 일단 디렉터리를 먼저 만드시고 그 경로를 넣어주세요. 저는 D:\APM_Setup\Server\PHP5 아래에 sessions 폴더를 하나 생성한 후 저기에 경로를 넣어줬습니다.

session.save_path = "D:\APM_Setup\Server\PHP5\sessions"

파일을 저장하고, 아파치를 재기동한 후 접속해보니 PHP 세션 경고는 사라졌습니다.


그 아래 SSL 암호화 경고는 그냥 무시하겠습니다. 저는 SSL을 사용할 생각이 없기 때문에...

다음은 PHP 업로드 용량 제한을 풀어줘야 합니다. APMSETUP을 설치하면 기본적으로 PHP에 350M 제한이 걸려 있는데요, 웹하드 용도로 사용한다면 용량 제한을 좀 더 크게 잡거나 아니면 풀어줄 필요성이 있겠죠? 이 설정은 UI로 바로 가능합니다. 물론 아까처럼 메모장으로 편집하셔도 되지만요...

APMSETUP 서버 환경 설정으로 들어가셔서 PHP 탭으로 가신 다음 아래 부분을 수정하시면 됩니다.


그런데 한가지 문제점이 있습니다. 매우 치명적인 문제점인데... 제가 잘은 모르지만 HTTP에서 POST 방식으로는 2G 이상 전송이 불가능한가 봅니다. (PHP 문제로 추정하고 있습니다.) 브라우저에서 제약을 하는건지... 정확한 원인을 아시는 분은 알려주세요. 아무튼 그래서 PHP 설정에 post_max_size 부분에 2047M을 입력하는게 최대입니다. 2G 또는 2048M 이상을 입력하게 되면 로그인조차 되지 않습니다. ㅠㅠ


물론 이것도 PHP 수정이라서 아파치를 재기동 하셔야 설정이 적용됩니다.

4. 파일 업로드 개수 제한 풀기

기본적으로 한번에 업로드할 수 있는 파일의 개수는 16개로 설정되어 있습니다. 이 설정을 무제한으로 풀어주려면

APM_Setup\htdocs\server\conf\conf.php 파일에서 아래 부분을 수정해주세요. 0으로 수정하시면 무제한으로 풀립니다.

$upload_max_number = 16;

5. 휴지통 없애기

지극히 개인적인 취향입니다만, 저는 휴지통을 사용하지 않습니다. 윈도우에서도 휴지통을 사용하지 않는데 저처럼 설정하고 싶으신 분은 아래 글을 참조하세요.

2010/06/03 - [컴퓨터 관련 팁] - 바탕화면에서 휴지통 제거하는 방법

아무튼 AjaXplorer에서도 휴지통을 제거해보겠습니다.

우선 휴지통이 자동으로 생성되게 하는 부분을 막아야 합니다.

APM_Setup\htdocs\server\conf\conf.php 파일에서 아래 부분을 수정하시면 됩니다.
그러니까 true 자리에 false를 넣으시면 됩니다.

$REPOSITORIES[0] = array(
 "DISPLAY"  => "Default Files",
 "AJXP_SLUG"  =>  "default",
 "DRIVER"  => "fs",
 "DRIVER_OPTIONS"=> array(
  "PATH"   => realpath(dirname(__FILE__)."/../../files"),
  "CREATE"  => false,
  "RECYCLE_BIN"  =>  'recycle_bin',
  "CHMOD_VALUE"   =>  '0600',
  "DEFAULT_RIGHTS"=>  "",
   === 이하 생략 ===

그리고 APM_Setup\htdocs\files 폴더에서 휴지통 폴더를 직접 제거해주시면 앞으로는 자동으로 생성되지 않습니다.

다음은 휴지통 기능을 사용하지 않도록 설정해야 합니다. 제가 맘대로 수정하는거라 이렇게 바꿔도 되는지는 모르겠습니다만...
아래 파일을 수정하시면 됩니다.

APM_Setup\htdocs\server\classes\class.RecycleBinManager.php

초반에 recycleEnabled 함수를 선언하는 부분이 나오는데

public static function recycleEnabled(){
 return (isSet(self::$rbmRecycle) && self::$rbmRecycle != null && is_string(self::$rbmRecycle));
}

저는 이 함수를 이렇게 바꾸었습니다. 방법이 야매같기는 한데 저는 개발자가 아니므로 양해 바랍니다. ;;;

public static function recycleEnabled(){
 return false;
}

아무튼 이렇게 2개의 파일을 수정해주니 휴지통이 자동으로 생성되지도 않고, 파일을 삭제할 때 바로 삭제가 되었습니다.

6. 로그인 및 기타

로그인 계정은 기본적으로 admin / admin 으로 설정되어 있습니다. 패스워드는 바로 변경해주시고, 여러 계정을 만들어서 사용자별로 폴더 권한을 다르게 설정하시려면 Settings에 들어가서 설정을 해주세요.



이상 간단 설명을 마치겠습니다. 추가로 궁금하신 내용은 검색을 통해 해결하시기 바랍니다. 그리고 저는 개인적으로 FTP 서버를 좋아합니다. 윈도우에서 IIS로 FTP 서버를 구축하실 분들은 아래 글을 한번 읽어보세요.

2010/11/21 - [Windows 7/기타 윈도우 7 이야기] - 윈도우 7에서 IIS로 FTP 서버 돌리기
2011/04/19 - [Windows 7/기타 윈도우 7 이야기] - 윈도우 7 FTP 서버 IIS 전용 계정 생성하기
2011/11/16 - [윈도우 일반] - IIS FTP 가상 디렉터리 추가시 보이지 않는 문제

업로드는 안하고 다운로드만 하려면 HTTP 서버로 해서 디렉터리 검색 기능을 활용해도 좋습니다.

2011/06/03 - [Windows 7/기타 윈도우 7 이야기] - 윈도우 7 IIS HTTP 파일서버 구축