初めまして、Qiita初投稿です.
自分のメモ用で恐縮ですが、SuiteCRMのインストール方法について手順を書きたいと思います.
##今回使用したバージョン
ubuntu18.04
PHP7.2
Apache2
MariaDB
##1. Apache2をインストールする
Apache2サーバーは以下のコマンドでインストールする.
sudo apt install apache2
Apache2をインストールしたあと、以下のコマンドによりApache2サービスを停止、開始、有効化ができます.
sudo systemctl stop apache2.service
sudo systemctl start apache2.service
sudo systemctl enable apache2.service
インストール後のテストとして、ブラウザを開き、http://localhost
にアクセスします.
上のページが表示されれば、Apache2は正常にインストールされています.
##2. MariaDBデータベースサーバーをインストールする
以下のコマンドでインストールする.
sudo apt install mariadb-server mariadb-client
MariaDBもインストールしたあと、以下のコマンドにより停止、開始、有効化ができます.
sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
インストール中にパスワードが要求されなかった場合、以下のコマンドを実行してデータベースサーバーをrootパスワードで保護します.
sudo mysql_secure_installation
コマンド実行後、質問が表示されたら次に従って答えてください.
Enter current password for root (enter for none): Just press the
Enter
Set root password? [Y/n]:Y
New password:Enter password
Re-enter new password:Repeat password
Remove anonymous users? [Y/n]:Y
Disallow root login remotely? [Y/n]:Y
Remove test database and access to it? [Y/n]:Y
Reload privilege tables now? [Y/n]:Y
データベースサーバーが正常にインストールされたか以下のコマンドでテストします.
sudo mysql -u root -p
上のページが表示されれば、MariaDBは正常にインストールされています.
##3. PHP7.2をインストールする
以下のコマンドを実行すると、PHPと関連モジュールをインストールします.
sudo apt install php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-bcmath php7.2-imap php7.2-xml php7.2-cli php7.2-zip
PHPをインストールしたあと、以下のコマンドを実行してApache2用のPHPデフォルト設定ファイルを開きます.
sudo vim /etc/php/7.2/apache2/php.ini
以下の部分を変更し、PHPベースのCMSに適した設定にします.
file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = 'Asia/Tokyo'
PHP設定ファイルは変更するたびに、Apache2Webサーバーも再起動する必要があります.
以下のコマンドで実行します.
sudo systemctl restart apache2.service
PHPがインストールされたので、動くかどうかのテストをします.
Apache2のデフォルトルートディレクトリにphpinfo.phpというテストファイルを作成します.
sudo vim /var/www/html/phpinfo.php
次に、以下の内容を書き込み保存します.
<?php phpinfo(); ?>
次にブラウザを開き、http://localhost/phpinfo.php
にアクセスします.
上のページが表示されれば、正常にインストールさせています.
##4. SuiteCRMデータベースを作成する
まず先程インストールしたデータベースサーバーに以下のコマンドでログインします
sudo mysql -u root -p
次に、データベースを作成します.
データベース名:suitecrm
create database suitecrm;
データベースに対して、ユーザーとパスワードを設定します.
ユーザー名:suitecrmuser
パスワード:password
create user 'suitecrmuser'@'localhost' identified by 'password';
次に、ユーザーにデータベースへのフルアクセス権を与えます.
grant all on suitecrm.* to 'suitecrmuser'@'localhost' identified by 'password' with grant option;
最後に、変更を保存して終了します.
flush privileges;
exit;
##5. SuiteCRMをダウンロード
今回この記事では、Githubリポジトリを使用します.
まず、SuiteCRMパッケージをダウンロードするためのgitツールをインストールします.
sudo apt install curl git
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
curlをインストールしたら、Apache2のルートディレクトリに移動し、GithubからSuiteCRMパッケージをダウンロードします.
cd /var/www/html
sudo git clone https://github.com/salesagility/SuiteCRM.git suitecrm
cd /var/www/html/suitecrm
sudo composer install --no-dev
その後、以下のコマンドを実行して、SuiteCRMルートディレクトリに適切な権限を設定し、Apache2に制御権を与えます.
##6. Apache2を設定する
SuiteCRM用にApache2サイト構成ファイルを作成します.
sudo vim /etc/apache2/site-available/suitecrm.conf
次に、作成したファイルに以下の内容を書き込みます.
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/suitecrm
ServerName example.com
ServerAlias www.example.com
<Directory /var/www/html/suitecrm/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/html/suitecrm/>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
</Directory>
</VirtualHost>
##7. SuiteCRMと書き換えモジュールを有効にする
上記にVirtualHostを設定したら、以下のコマンドを実行にして、有効にします.
sudo a2ensite suitecrm.conf
sudo a2enmod rewrite
sudo systemctl restart apache2.service
次にブラウザを開き、http://example.com/install.php
にアクセスする.
下のページが表示されたら、契約を読みます.
同意すると進みます.
次に、PHPのすべての要件が満たされることを確認します.
その後、上記で作成したデータベース接続情報を入力します.
またページ右側では、SuiteCRMを管理するためのアカウントを作成します.
インストールが完了すれば、終了です.
先程上で作成した管理者アカウントでログインすれば、SuiteCRMを使用することができます.
以上です、ありがとうございました.