SugarCRM コミュニティエディションをSolarisにインストール

 Solarisへのインストールには、手こずったが、最終的には解決した。

 

■Solarisの環境

php 5.2.6

MySQL 5.0.67

 

■SugarCRMを入手する

SugarCE 5.0.0h 日本語版を入手した。 

http://sugarforum.jp/wiki/ダウンロード 

 

■インストールマニュアルを読む

日本語

http://sugarforum.jp/wiki/Sugarのインストール

英語 

http://www.sugarcrm.com/crm/index.php?option=com_docs&edition=OS&Itemid=375

 

■PHPでアップロード可能なファイルサイズを設定する

アップロード可能なファイルサイズに20MB以上割り当てる。

/usr/local/lib/php.ini を編集する。 

upload_max_filesize = 20M

 

メモリ上限値を40MB以上割り当てる。初期状態で128Mだったのでそのままにしておいた。

memory_limit = 128M 

 

日本語を有効にする。

default_charset = "UTF-8"
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = pass
mbstring.detect_order = auto
mbstring.substitute_character = none

 

mbstringをコンパイル時に指定したかを確認しておく。

# /usr/local/bin/php -i | grep mbstring

 

■MySQLデータベースを作成する

データベース名:  sugarcrm

キャラクタセット: utf8 

ユーザー名:  sugar

パスワード:  sugar 

mysql> create database sugarcrm default character set utf8;
mysql> grant all privileges on sugarcrm.* to sugar@localhost
    -> identified by 'sugar';

 

■SugarCRMを設置する

公開ディレクトリ: /export/home/foo/public_html/sugar

Webアクセス:  http://192.168.0.123/sugar/

 

ダウンロードしたファイルを解凍する。

$ unzip SugarCE-Full-5.0.0h-Ja.zip  

 

解凍したファイルを設置する。sugarというディレクトリ名で設置した。

$ mv SugarCE-Full-5.0.0h-Ja /export/home/foo/public_html/sugar

 

Apache実行ユーザーが書き込めるようにする。(イントラネットで使うのでこれでよしとした。)

$ chmod -R 777 /export/home/foo/public_html/sugar

 

本来はマニュアル通りにアクセス権を設定する。4つのディレクトリとconfig.phpをApache実行ユーザが書き込み可能にする。

  • cache
  • customdata
  • modules
  • config.php
$ cd /export/home/foo/public_html/sugar/
$ chmod 777 config*.php
$ chmod -R 777 cache custom data modules

 

sugarディレクトリを777にしておかないとsugar/sugarcrm.logが書き込まれないことがドキュメントには書かれていなかったなぁ…。

 

 

 

■SugarCRMをセットアップする

http://192.168.0.123/sugar/install.php にアクセスする。

インストールタイプ: 通常インストール

データベース名: sugarcrm

ホスト名: localhost 

データベース管理者: root

データベース管理者パスワード: root_password 

既存ユーザを指定

Sugarデータベースの管理者: sugar

Sugarデータベースの管理者パスワード: sugar

 

Sugarインスタンスの定義

SugarCRM管理者のユーザパスワード:  foo

 

続行すると、以下のエラーメッセージが表示される。 

Warning: mkdir() [function.mkdir]: Permission denied in ./include/dir_inc.php on line 86

 

5.0.0bをインストールする場合のエラーメッセージ。

Warning: dir(/cache/upload/upgrades) [function.dir]: failed to open dir: No such file or directory in ./include/dir_inc.php on line 150

 

まぁ、そんな感じでインストールできない。

5.0.0a

5.1.0c

5.0.0b

5.0.0h

全部、ダメ。なんか普通にインストールできないように仕込まれているような気がしてしまうのだった。

 

で、別の方法を使った。

 

■Macにインストール

とりあえず、手元のMac miniにSugarCRM 5.1.0b をインストールしたら、動いた。

 

MySQL5を起動しておく。

# /usr/local/mysql/bin/mysqld_safe --user=mysql &

 

解凍したSugarCRMを置いた場所:

/Library/WebServer/Documents/sugar/

 

Apacheを起動する。

システム環境設定 > 共有 > Web共有をオン

 

http://localhost/sugar/ へアクセスする。

エラーがたくさんでるので、

php.iniを編集して、sugarを書き込み可能にしておく。

# vi /private/etc/php.ini
$ chmod -R 777 sugar

 MySQLのソケット指定を、合わせてあげる。

# mkdir /var/mysql
# ln -s /tmp/mysql.sock /var/mysql/mysql.sock

 

このくらいの設定でOKだった。

ブラウザで、http://localhost/sugar/install.php へアクセスして、初期設定を行う。

あとは、adminユーザーと、設定したadminパスワードでログインすれば普通に使える。

ログインは、http://localhost/sugar/index.phpへアクセスする。

 

■Solarisへ持っていく

SugarCRMのPHPファイル と MySQLデータベース をSolaris 10 へ持っていく。

 

PHPファイル

$ tar zcvf sugar.tgz sugar 

 

MacのMySQLデータベースのエクスポート

$ mysqldump sugarcrm > sugarcrm.sql -u sugar -p

 

SolarisでMySQLデータベースのインポート

$ mysql sugarcrm < sugarcrm.sql -u sugar -p

 

これで、http://イントラネットサイト/sugar/index.php へアクセスするとエラー無く使えた。