SugarCRM 설치

오픈소스 비즈니스 컨설팅
Pnuskgh (토론 | 기여)님의 2018년 2월 7일 (수) 16:41 판 (새 문서: == CentOS에 Sugar 6.5.13 설치 == CentOS에서 Sugar를 설치 합니다. *사전 준비 사항 :*MySQL 설치<br/>:*[[Apache HTTP Server|...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
둘러보기로 가기 검색하러 가기

CentOS에 Sugar 6.5.13 설치

CentOS에서 Sugar를 설치 합니다.

  • 사전 준비 사항
  • [[MySQL|MySQL]] 설치
    :*[[Apache HTTP Server|Apache HTTP Server]] 설치
    :*[[PHP|PHP]] 설치
  • Sugar를 다운로드하여 원하는 위치에 놓고 압축을 풉니다.

 cd /cloudnas/install
 wget http://sourceforge.net/projects/sugarcrm/files/1%20-%20SugarCRM%206.5.X/SugarCommunityEdition-6.5.X/SugarCE-6.5.14.zip/download
 
 unzip SugarCE-6.5.14.zip
 chown -R apache:apache SugarCE-Full-6.5.14
 mv SugarCE-Full-6.5.14 /cloudnas/www/html/sugar

  • IE에서 http://~/sugar 사이트로 접속하여 설치를 진행 합니다.
  • "The passwords provided for the Sugar database user do not match. Please re-enter the same passwords in the password fields." 오류 발생시
  • "Same as Admin User"를 선택하여 설치 합니다.
    :*설치 완료후 config.php 파일에서 db 접속 정보를 수동으로 변경 합니다.


설치 가이드

아래 설치 가이드는 Windows Server 2003을 기준으로 작성한 것 입니다. 설치 환경이 틀릴 경우에는 별도의 주석을 달아 주세요.

설치전 사전 준비 사항

  • [[MySQL 5.0.51|MySQL Community Server 5.0.51]] 설치
  • [[MySql Tools for 5.0|MySql Tools for 5.0]] 설치
  • [[Apache HTTP Server 2.2.8|Apache HTTP Server 2.2.8 with OpenSSL 0.9.8g]]
    *[[PHP 5.2.5|PHP 5.2.5]] 설치
  • PHP에 [[PHP 5.2.5#GD Library 설치|GD Library 2.0.35]] 설치
    :*PHP에 gettext 모듈 설치
    :*PHP에 [[PHP 5.2.5#IMAP 설치|IMAP 확장팩]] 설치
    :*PHP에 mbstring 모듈 설치
    :*PHP에 mysql, mysqli 모듈 설치
    :*PHP에 curl 모듈 설치
    :*php.ini에서 다음과 같이 설정 한다.

 memory_limit = 128M         : 최소 40M 이상
 upload_max_filesize = 10M   : 최소  6M 이상
 post_max_size = 10M         : 최소  6M 이상

Sugar CRM 설치

  • Apache의 Document Root인 c:/www 아래 c:/www/sugar/ 폴더($SUGAR_HOME)에 다운로드 받은 압축 파일의 압축을 풀어 저장 한다.


  • Sugar CRM은 PHP 버전이 최소 5.1.0 이상이 되어야 하며, 5.2.x를 권장 하므로 5.3.0일 경우 다음과 같이 조치를 취하여야 정상적으로 설치가 된다.

 //--- $SUGAR_HOME/include/utils.php의 setPhpIniSettings() 함수에서 3라인을 주석 처리 한다.
 function setPhpIniSettings() {    //--- 3562 라인
 //  if(function_exists('gzclose') && headers_sent() == false) {
 //      ini_set('zlib.output_compression', 1);
 //  }
 
 //--- $SUGAR_HOME/install/welcome.php에서 (163 라인)
 if (version_compare(phpversion(),'5.1.0') < 0 || version_compare(phpversion(),'5.3.0') >= 0) {
 //--- 위 문장을 아래와 같이 수정 한다.
 if (version_compare(phpversion(),'5.1.0') < 0 || version_compare(phpversion(),'5.3.0') > 0) {


[[File:Install sugar 001.png|설치 시작]]
:*하단의 "Next" 버튼을 선택 한다.


  • "I Accept"를 체크하여 라이선스를 확인한 후 "Next" 버튼을 선택 한다.
[[File:Install sugar 002.png|라이선스 확인]]


  • "Custom Install"을 선택한 후 "Next" 버튼을 선택 한다.
[[File:Install sugar 003.png|Custom Install]]


  • Database Type으로 "MySQL(MySQLi detected)"를 선택한 후 "Next" 버튼을 선택 한다.
[[File:Install sugar 004.png|DBMS 선택]]


  • 다음과 같이 DBMS 정보를 설정한 후 "Next" 버튼을 선택 한다.

 Database Name                         : "sugardb" (SugarCRM용으로 생성한 Database 명)
 Host Name                             : "localhost"
 Database Administrator Username       : "root"
 Database Admin Password               : xxxx
 Select Box에서 “Provide existing user”를 선택 한다.
 Sugar Database Username               : "sugar" (SugarCRM용으로 생성한 DB 사용자)
 Sugar Database User Password          : xxxx
 Re-enter Sugar Database User Password : xxxx
 Populate Database with Demo Data?     : "yes" 선택 (데모용 데이터가 생성됨)

[[File:Install sugar 005.png|DBMS 설정]]


  • "I Accept" 버튼을 선택하여 위 설정에 따라 DB가 생성되도록 한다.
[[File:Install sugar 006.png|DB 생성 확인]]


  • SugarCRM의 접속 정보 및 관리자(admin)의 암호를 설정 한다.

 URL of Sugar Instance              : "http://localhost/sugar"
 System Name                        : "SugarCRM"
 Sugar Admin User Password          : xxxx
 Re-enter Sugar Admin User Password : xxxx

[[File:Install sugar 007.png|접속 정보]]


  • 다음과 같이 보안 옵션을 설정 한다.

 Send Anonymous Usage Statistics ?        : not check
 Automatically Check For Updates?         : not check
 Use a Custom Session Directory for Sugar : not check
 Use a Custom Log Directory               : not check
 Provide Your Own Application ID          : not check (SugarCRM Clustering시 사용함)

[[File:Install sugar 008.png|보안 옵션]]


  • 다음과 같이 지역 설정을 한다.

 Default Date Format                             : "2006/12/23"
 Default Time Format                             : "11:00pm"
 Default Language                                : "US English"
 Default Name Format                             : "s lf"
 Character Set most commonly used in your Locale : "UTF-8"
 Character Set for Import/Export                 : "UTF-8"
 Export (.csv) Delimiter                         : ","
 
 Default Currency                                : "Korean Won"
 Significant Digits                              : "0"
 1000s Separator                                 : ","
 Decimal Separator                               : "."

[[File:Install sugar 009.png|지역 설정]]


  • 설정값을 확인하고 "Install" 버튼을 선택하여 설정을 시작 한다.
  • $SUGAR_HOME/config.php 설정 파일이 생성됨
    :*Database가 설정이 되고 데모 데이타가 등록됨
    :*시간이 오래 걸릴 수 있으므로 끈기를 가지고 기다려야 함
    :[[File:Install sugar 010.png|설정 적용]]


  • SugarCRM이 제대로 설정된 것을 확인하고 "Next" 버튼을 선택 한다.
[[File:Install sugar 011.png|설정 적용 완료]]


  • 한글 언어팩을 설치할 수 있는 화면이나 여기서는 "Next" 버튼을 선택하여 Skip 한다.
  • SugarCRM의 초기 설정에서 적용한 사항은 관리자 화면에서 다시 설정할 수 있다.
    :*또는 $SUGAR_HOME/config.php 파일을 직접 수정하여 다시 설정할 수 있다.
    :[[File:Install sugar 012.png|언어팩 설정]]


  • Registration (Optional) 화면에서 오픈소스의 발전을 위해 Sugar CE를 설치한 것을 SugarCRM에 알리고자 할 경우 필요한 정보를 입력한 후 "Send Registration" 버튼을 선택 한다.
[[File:Install sugar 013.png|설치 알림]]


  • SugarCRM의 설치가 완료 되어 로그인 창이 표시된다.
  • 설치시 등록한 관리자(admin)으로 로그인 하여 보자.
    :[[File:Install sugar 014.png|로그인]]


  • 첫 로그인시 TimeZone을 설정하는 화면이 표시된다.
  • "Asia/Seoul(GMT+9)"를 선택한 후 "Save" 버튼을 선택 한다.
    :[[File:Install sugar 015.png|TimeZone 설정]]


한글팩 설치

한글팩 설치는 한글팩(language_ko_KR.zip)이 있다는 가정하에서 설명 한다.

  • 한글팩 설치
  • 관리자로 로그인 한다.
    :*"Admin -> Module Loader" 메뉴를 선택 한다.
    :*"찾아보기..."을 선택한 후 language_ko_KR.zip을 선택 한다.
    :*"Upload" 버튼을 눌러 한글팩을 서버로 업로드 한다.
    :*업로드된 한글팩 옆에 표시되는 "install" 버튼을 눌러 한글팩을 설치 한다.
  • 디폴트 언어 변경
  • $SUGAR_HOME/config.php

 'languages' => array (
   'ko_KR' => 'Korean',
   'en_us' => 'English (US)',
 ),
 'default_language' => 'ko_KR',

  • Module Builder(모듈 생성 도구) 오류 수정
  • 한글팩을 설치하면 Module Builder(모듈 생성 도구)가 정상 동작하지 않는다.
    ::*한글팩을 설치할 경우, json.js (json-min.js) 파일의 _prepare() 함수가 호출되면 반환되는 문자열 앞에 이상한 문자열이 붙어 JavaScript Exception이 발생 한다.
    ::*따라서 JSON을 사용하여 서버 프로그램을 호출한 후 실행되는 parse() 함수에서 사용되는 s=_prepare(s) 함수 다음에, 반환되는 문자열에 대한 복구 작업을 해 주어야 한다.
    ::*반환되는 문자열을 복구하는 함수는 s = s.substring(s.indexOf("{")); 이다.
    ::*json.js (json-min.js) 파일은 아래 sugar_grp1_yui.js 파일안에 포함 되므로 sugar_grp1_yui.js를 직접 수정 한다.
    :*vi $SUGAR_HOME/include/javascript/sugar_grp1_yui.js
    ::*vi $SUGAR_HOME/include/javascript/yui/build/json/json-min.js 파일을 수정한 후, "관리 -> 복구 -> JS 그룹 파일 재생성" 메뉴을 선택하여 sugar_grp1_yui.js 파일을 다시 생성하여도 된다.

 /json-min
 ?_prepare          //--- s=_prepare(s); 를 찾기 위한 명령임
 //--- s=_prepare(s); 문자열 바로 뒤에 아래 문자열을 추가 한다.
 s = s.substring(s.indexOf("{"));

  • MS Explorer의 경우 GET 방식으로 한글을 넘겨 줄 때, 발생하는 오류 수정
  • 해결방안: 한글을 넘겨 주는 부분을 JavaScript의 encodeURI() 함수를 사용하여 인코딩 한다.
    :*오류 현상 1 : Studio의 레이아웃에서 필드의 속성값을 편집하는 화면이 깨어진다.
    ::*/modules/ModuleBuilder/tpls/layoutView.tpl 파일에서 editProperty 화면을 호출하는 부분을 수정 한다. (onclick 부분)
    ::*/modules/ModuleBuilder/tpls/listView.tpl 파일에서 editProperty 화면을 호출하는 부분을 수정 한다.
    :*오류 현상 2 : Studio의 레이아웃에서 패널의 속성값을 편집하는 화면이 깨어진다.
    ::*/modules/ModuleBuilder/javascript/studio2.js 파일에서 editProperty 화면을 호출하는 부분에서 title_label과 value_label을 수정 한다.
    :*오류 현상 3 : 하위 패널 호출 시 화면이 표시되지 않는다.
    ::*/modules/ModuleBuilder/javascript/ModuleBuilder.js 파일에서

 handleTreeClick: function(o) {
    var node = o.node;
    //--- ModuleBuilder.getContent(node.data.action);  이 라인을 지우고 다음 라인과 같이 수정 한다.
    ModuleBuilder.getContent(encodeURI(node.data.action));
    return false;
 },


Ubuntu용 설치 가이드

  • SugarCRM 소스 준비

 cd /var/www
 unzip SugarCE-5.5.0beta2.zip
 mv SugarCE-Full-5.5.0beta2 sugar
 chown -R www-data:www-data sugar
 

  • SugarCRM 설치를 위한 준비

 apt-get install php5-curl
 vi /etc/php5/apache2/php.ini
   memory_limit = 128M         : 최소 40M 이상
   upload_max_filesize = 20M   : 최소 20M 이상
   post_max_size = 30M         : 최소 20M 이상
 /etc/init.d/apache2 restart

  • 설치에 대한 상세 내역은 위에 정리된 사항을 참조 한다.