XAMPP and Pydio

Ref.

개요

  • 집에서 사용하는 PC를 개인용 클라우드 서버로도 운용하기 위한 목적이다.
  • 본인의 경우는, Intel-NUC PC를 사용하고 있어서 전력사용량의 부담이 적기 때문에 이 방법을 사용하기로 했다.
  • 그리고 리눅스 네이티브로 별도의 하드웨어를 꾸미지 않고 그냥 윈도우에서 운용하기로 했다.
  • 윈도우 환경을 버리고 싶은데, 중요한 어플리케이션들 몇가지가 리눅스를 지원하지 않기 때문에 울며 겨자먹기로 윈도우 환경에서 구성할 수 밖에 없다.
  • 윈도우8.1 환경이다.
  • 아파치 + MySQL + PHP 환경 구성을 위해 XAMPP 패키지를 사용한다.
  • 클라우드 서비스로 Pydio 패키지를 사용한다.
  • 공유기는 ipTime을 사용한다.

XAMPP 다운로드

PYDIO 다운로드

XAMPP 설치

  • 설치파일을 실행한다.
  • 아파치, PHP, MySQL, PHPmyAdmin을 설치 체크한다. 나머지는 불필요하다.
  • D:\xampp 경로에 설치한다.
  • ControlPannel을 설치해 준다.
  • 설치 완료되면 자동으로 XAMPP다 실행되고 ControlPannel이 뜬다.
  • 아파치 웹서버가 자동으로 이상없이 실행되는지 확인한다.

아파치 서버 설정

  • 만일 포트 문제로 안된다면, 우측의 Config 버튼을 누르고 Service & Port Settings로 들어가서 바꿔준다.
  • 그래도 포트변경이 제대로 먹지 않기 때문에,
  • 아파치 Config의 httpd.conf 설정에서 80을 800으로 다 바꿔준다.
  • 아파치 Config의 httpd-ssl.conf 설정에서 443을 801로 다 바꿔준다.
  • 이제 아파치 Start 눌러서 잘 실행되는지 확인한다.
  • 웹브라우저 주소창에 localhost 또는 127.0.0.1을 쳐서 잘 연결되는지 확인한다.

PHP 환경설정

  • 아파치 Config 중에서 php.ini에서 아래와 같이 해당 구문의 내용을 수정해 준다.
  • 로그인 세션 유지 시간 제한을 늘리고, 업로드 파일 용량 제한도 최대한 늘리는 것이다.
    session.gc_maxlifetime=7200
    post_max_size=4G
    upload_max_filesize=4G 
    

부트스트랩 설정 수정

  • D:\xampp\htdocs\pydio\conf\bootstrap_conf.php 파일을 메모장으로 열어서 다음 내용을 추가해 준다.
  • 이 설정을 추가해 줘야만 한글로 된 파일이나 폴더 이름을 사용해도 에러가 발생하지 않는다.
    define("AJXP_LOCALE", "");
    

보안을 위해 MySQL root 비밀번호 변경

  • MySQL을 Start해 준다.
  • 이상없이 잘 실행되는지 확인한다.
  • Admin 버튼을 누르면 웹브라우저가 실행되면서 phpMyAdmin 페이지로 들어간다.
  • 좌측 트리에서 mysql, 'user'로 찾아들어간다.
  • 화면 상단의 탭 중에서 SQL탭을 선택해서 들어간다.
  • 쿼리 써넣는데에 update user set password = password('패스워드') where user = "root"; 구문을 쳐 넣는다.
  • 그리고 우측 아래에 있는 실행 버튼을 누른다. 이상없이 실행되었는지 메시지를 확인한다.
  • 이제 MySQL을 Stop 했다가 다시 Start 해 준다.
  • 이제 phpMyAdmin에 바뀌어진 비밀번호를 먹여줘야 한다.
  • D:\xampp\phpMyAdmin\config.inc.php를 편집기로 연다.
  • $cfg['Servers'][$i]['password'] = ''; 구문에서 비밀번호란을 채워넣어 준다.
  • 이제 다시 웹브라우저에서 phpmyadmin이 잘 들어가는지 확인한다.

보안 관련 설정 변경하는 다른 방법

  • 현재 버전에서 D:\xampp\security\htdocs\lang.tmp 파일의 내용이 잘못된 오류가 있으므로, 이 파일을 편집기로 열어서 기존의 내용을 삭제하고 en으로 바꿔준다.
  • 이후에 웹브라우저에서 localhost/security로 들어가면 보안 페이지가 뜬다.
  • 이 페이지에서 현재의 보안 수준을 보여주므로 참고한다.
  • http://localhost/security/xamppsecurity.php 링크가 있으므로 눌러서 들어가면 핵심 패스워드를 변경 가능하다.

MySQL DB 생성

  • phpMyAdmin 페이지에서 작업한다.
  • 사용자 탭으로 들어간다.
  • 사용자 추가를 누른다.
  • 사용자명과 암호를 정해준다. Host는 가급적 로컬로 해 준다. 전체적 권한은 모두 체크로 선택한다.
  • 우측 아래에 생성 버튼을 눌러서 생성시킨다.
  • 데이터베이스 탭으로 들어간다.
  • 새 테이터베이스 만들기 부분에서 원하는 데이터베이스명은 pydio로 해 주고, 및 데이터정렬방식은 생략해 주고 만들기 버튼을 누른다.
  • 사용권한 탭으로 들어간다.
  • pydio 데이타베이스에 접근할 수 있는 사용자에 새로 만든 계정이 있는지 확인한다.

PYDIO 설치

  • 다운로드 받은 압축파일을 D:\xampp\htdocs\pydio 안에 풀어넣는다.
  • D:\xampp\htdocs\pydio\.htaccess 파일을 편집기로 열고, 다음 내용을 추가한다.
  • 업로드 파일 용량을 최대한 크게 해 주기 위한 것이다.
    php_value upload_max_filesize 2048M
    php_value post_max_size 2000M
    php_value max_execution_time 0
    php_value max_input_time 0
    
  • 웹브라우저 주소창에 localhost/pydio를 쳐서 들어가는지 확인한다.
  • click here to continue to Pydio. 링크를 눌러서 셋업을 진행한다.
  • 대부분 알아서 설정하도록 하고, 엔코딩은 윈도우 환경이니깐 CP949으로 디텍트 되어 있는지만 확인해 준다.
  • DB 설정 역시 앞서 셋팅한 MySQL 설정을 먹여준다.
  • 설정이 다 되었으면 인스톨 버튼을 눌러서 완료한다.
  • 웹브라우저 주소창에 localhost/pydio로 들어가서 로그인 해 본다.
  • 로그인 후, 설정으로 들어가서 Application Core에서 Uploaders Options의 Limitations 중에서 File Size 란을 2G으로 수정한다.
  • 그런데 File Size를 변경해 보면 안 먹힌다.
  • 그러면, 설정에서 Feature plugin으로 들어가서 Uploaders안의 Java (big files)를 더블클릭해서 들어간다. 여기서 INSTALL APPLET을 해 준다.
  • 그리고 나서 다시 Application Core의 File Size를 확인해 보면 자동적으로 -2147483648으로 확장되어 있음을 볼 수 있다. 2GB 용량이다.

PYDIO 설정

  • 로그인 계정에서 설정으로 들어간다.
  • Workspaces에서 New Workspace를 눌러서 만든다.
  • WORKSPACE LABEL은 원하는 이름으로 넣어주고, ACCESS DRIVER는 File System (Standard)를 선택해 준다.
  • 원하는 PATH를 넣어준다. 나머지 설정은 일단 디폴트로 놔 둬 본다.
  • 이런 식으로 원하는 폴더를 공유해 줄 수 있다.

포트포워딩 (ipTime 공유기)

  • 192.168.0.1로 들어가서 공유기 설정으로 들어간다.
  • NAT 관련 설정 항목 안에 아마 포트포워드 설정란이 있을 것이다.
  • 여기서 내부IP, 내외부 포트 등을 설정해 준다.

DDNS 설정 (ipTime 공유기)

  • 192.168.0.1로 들어가서 공유기 설정으로 들어간다.
  • 특수기능 항목 안에 DDNS 설정으로 들어간다.
  • 호스트이름은 호스트이름.iptime.org 정도로 넣어준다.
  • 사용자ID는 자신이 사용하는 이메일 주소를 넣어준다. 비번도 잘 알아서 한다.
  • 이제 외부에서 호스트이름.iptime.org:포트번호/pydio를 쳐서 잘 되는지 확인해 본다.

Pydio 관련 유틸리티 사용

  • 스마트폰,태블릿용 무료앱을 설치할 수 있다. 앱스토어에서 pydio를 찾아서 깔고 쓴다.
  • PC용 싱크 앱도 설치할 수 있다. https://pyd.io/apps/pydio-sync/ 에서 깔아서 쓸 수 있다.