아마도 Gmail을 웹하드 용도로 그러니까 Gmail Drive나 GSpace, GmailFS와 같은 툴을 이용해 사용해보신 분들은 한번쯤 올려놓은 파일을 링크를 통해서 다른 사람과 공유할 수는 없을까 하는 생각을 해보셨을 겁니다. 그래서 지금부터 앞서 제목에서 언급한 PHP Gmail Drive(이하 PGD)를 이용한 첨부파일을 공유하는 방법을 알려드리고자 합니다. (^^;)

우선 PHP Gmail Drive를 이용하기 위해서는 첫번째, PHP 4.0 이상이 설치되어 있고 더불어 CURL Extension이 깔려있는 호스팅 계정이 있어야 합니다. 제가 사용하는 호스팅 계정의 경우에는 설치되어 있더군요. (^^!) 잘 모르시는 분들은 아래 PGD 설치파일을 다운로드하신 후에 계정에 올려놓고 pgd 폴더 안에 있는 diagnose.php 파일을 실행해 보시면 됩니다. PGD가 사용가능한 경우 6가지 항목에 passed가 뜨고 사용불가능한 경우에는 오류가 나게 됩니다.

두번째, Gmail 계정이 있어야 하고 위에 언급한 Gmail Drive나 GSpace, GmailFS 이 3가지 프로그램 중에 하나를 사용할 줄 알아야 합니다. 3가지 프로그램은 사용하시는 분이 상당히 많은 것으로 알고 있으니 간단히 검색만 하셔도 충분히 사용하실 수 있으리라 생각됩니다. 저의 경우에는 GSpace를 사용하고 있습니다.

그럼 PHP Gmail Drive를 먼저 설치해 보겠습니다.

1. PHP Gmail Drive 소스를 다운로드 합니다.

pgd-0.3.4.zip2. 압축을 푼 후 pgd 폴더를 통째로 계정에 업로드 한 후에 폴더 안에 있는 diagnose.php 파일을 실행시켜 봅니다. 사용이 불가능한 경우에는 호스팅 업체에 CURL extension 사용과 관련하여 문의를 하면 조치가 가능할 겁니다. (^^;)

사용불가시


Warning: dl(): Unable to load dynamic library './php_curl.dll' - ./php_curl.dll: cannot open shared object file: No such file or directory in /home/hosting_users/minilogue/www/pgd/diagnose.php on line 71

Warning: dl(): Unable to load dynamic library './curl.so' - ./curl.so: cannot open shared object file: No such file or directory in /home/hosting_users/minilogue/www/pgd/diagnose.php on line 71
Test 1 (curl extension): failed. It seems that you do not have CURL installed. You may read this for more infos on CURL in PHP.
사용가능시


Test 1 (curl extension): passed. Test 2 (curl http): passed. Test 3 (SSL via curl): passed. Test 4 (cookie set): cookie sent. Note: you have to tell your browser to accept this cookie in order to continue the test. Press here to continue.

Test 5 (cookie get): passed. Test 6 (PHP session extension): passed. If you have all 6 tests passed. You should have no problem installing and using gmail-lite and libgmailer.


3. pgd 폴더 안에 있는 config.php 파일을 자신의 Gmail 계정에 맞게 수정한 후 업로드 합니다.

단일 계정일 경우
$gmail_user[0] = "google@gmail.com(자신의 Gmail 주소)";
$gmail_password[0] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password

복수 계정일 경우

$gmail_user[0] = "google0@gmail.com(자신의 Gmail 주소)";
$gmail_password[0] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password
$gmail_user[1] = "google1@gmail.com(자신의 Gmail 주소)";
$gmail_password[1] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password
$gmail_user[2] = "google2@gmail.com(자신의 Gmail 주소)";
$gmail_password[2] = "pgdyo(자신의 Gmail 암호)"; //Use your Own password

$maxAccounts = 3; //Number of accounts to be used
//To add an account, copy & paste
//$gmail_user[x] = "@gmail.com";
//$gmail_password[x] = ""; //Use your Own password
//replace them with the correct values and x is the number for the account..
//the number should be incrementing..0..1..2 etc. and should start with 0..

# $maxAccount 를 설정하신 후에 갯수에 맞춰서 계정을 입력하시면 됩니다. 복수 계정으로 PGD를 사용하는 경우 각 계정에 있는 파일들이 계정 구분없이 한꺼번에 나타납니다.

4. Gmail Drive, GmailFS, GSpace 등을 이용해 계정이 파일을 업로드 합니다. 공식적으로 PGD 홈페이지에서 밝히고 있는 것은 Gmail Drive와 GmailFS 입니다만, GSpace로 업로드한 파일도 잘 보이네요. (^^;)

5. 이제 다 끝났습니다. http://자신의 계정/pgd/index.php 를 불러오면 됩니다. 파일 다운로드시에는 '다른 이름으로 저장'을 하도록 합니다.


제가 설치한 PGD의 모습니다. GSpace로 업로드 하다보니 글자 일분이 잘려보이기도 합니다만 전혀 문제없습니다. (^ㅇ^;) 구경해보기

위 그림에서 gs1, gs2로 분할된 파일을 20MB가 넘기 때문에 자동을 분할 된 것이고 GSpace의 Preferences 항목에서 Join이 가능합니다.


현재 다운로드 속도를 테스트해보니 500~600kb/s 정도가 나오네요.

# PGD 사용시 유의사항

1. Gmail을 파일 서버로 사용하는 것은 약관에 위배되기 때문에 과도한 트래픽이 발생할 경우 계정이 24시간 동안 정지당할 수 있습니다. (저도 GSpace 사용하다 600MB 정도 사진을 업로드 했다가 하루 정지당한 적이 있습니다) 또, 사용에 따른 불이익은 본인에게 있습니다. (>.<)/

2. config.php 파일에 Gmail 계정 정보를 저장하기 때문에 보안상 위험할 수 있습니다. PGD 사용시에는 추가 이메일 계정을 만들어서 사용하시는 걸 추천합니다.

3. Gmail 서비스가 업데이트 되면 PGD 사용이 불가능해질 수 있습니다. PGD 홈페이지에서는 libgmailer.php 를 업데이트 하면 왠만큼 해결이 가능하다고는 합니다만, 제 경험상 몇 개월동안 사용이 불가능했던 적도 있었습니다. 즉, 지속적으로 사용이 가능할지는 미지수입니다. (ㅡ.ㅡ^)
by Anna 안나 2008. 10. 25. 11:15