オープンソース

next up previous contents
Next: 3. 使い方 Up: MagLo Previous: 1. はじめに


2. インストール

2.1 インストール要件

2.1.1 OS要件

本ソフトウェアは以下のOSで動作します。

  • CentOS7

2.1.2 ソフトウェア要件

本ソフトウェアを稼働されるために以下のソフトウェアが必要です。

  • Apache HTTP Server 2.4 系
  • Postfix
  • PHP 5.4 系
    • php-5.4
    • php-common-5.4
    • php-mbstring-5.4
    • php-cli-5.4
  • Smarty 3.1.29

2.1.3 ブラウザ要件

本システムのWebインターフェースの動作を保証するブラウザは以下のものです。 なお、Cookieとjavascriptが有効である必要があります。

  • Firefox
  • Chrome
  • Internet Explorer 10 以上

2.2 MagLoの入手と展開

MagLoソフトウェアは、MagLoプロジェクトのダウンロードページから入手することが出来ます。
https://github.com/designet-inc-oss/MagLo
ダウンロードしたのち、圧縮されたアーカイブファイルを展開し、インストールディレクトリに配置します。

  • コマンド
    # tar xzvf MagLo-x.x.x.tar.gz
    # mv MagLo-x.x.x /usr/local/maglo
    

インストールが完了すると、必要なファイル・ディレクトリは以下に配置されます。

/usr/local/maglo/bin/msqualldeliver メール配信スクリプト
/usr/local/maglo/bin/msqualldeliver.bin メール配信プログラム
/usr/local/maglo/etc/admin_passwd 管理者パスワードファイル
/usr/local/maglo/etc/maglo.conf 設定ファイル
/usr/local/maglo/htdocs/ MagLoプログラム本体
/usr/local/maglo/htdocs/css/ CSSファイル保管ディレクトリ
/usr/local/maglo/htdocs/js/ javascript保管ディレクトリ
/usr/local/maglo/inc/message.inc メッセージファイル
/usr/local/maglo/lib/ 関数ライブラリ
/usr/local/maglo/sess/ セッション管理ディレクトリ
/usr/local/maglo/tmp/ 一時ファイル用ディレクトリ
/usr/local/maglo/tmpl/ HTMLテンプレート
/usr/local/maglo/var/sender_list 送受信者管理ファイル(※)
/usr/local/maglo/var/status/ 配信ジョブ管理ディレクトリ
/usr/local/maglo/vender/ テンプレートエンジン配置ディレクトリ
※送受信者管理ファイルの文字コードはUTF-8である必要があります。

2.2.1 FromDomainの設定

配信するメールマガジンのエンベロープFromの設定を行います。 エンベロープFromは、設定ファイルのFromDomainを変更します。
  • 設定ファイル:/usr/local/maglo/etc/maglo.conf
    FromDomain=designet.co.jp
    

2.2.2 crondの設定

メール配信スクリプトはcrondから実行します。 crondの設定は、/etc/cron.d/に次のファイルを追加します。

  • 追加ファイル:/etc/cron.d/maglo
    * * * * * apache /usr/local/maglo/bin/msqualldeliver
    

2.3 テンプレートエンジンのインストール

2.3.1 Smartyのダウンロード

Smartyのアーカイブをダウンロードします。
Smartyのアーカイブは、ダウンロードページから入手することが出来ます。
http://www.smarty.net
ダウンロードしたのち、圧縮されたアーカイブファイルを展開し、インストールディレクトリに配置します。

  • コマンド(アーカイブの展開)
    # tar xvzf smarty-3.1.29.tar.gz
    

  • 実行例
    # tar xvzf smarty-3.1.29.tar.gz
    smarty-3.1.29/
    smarty-3.1.29/.gitattributes
    〜(中略)〜
    smarty-3.1.29/libs/sysplugins/smartycompilerexception.php
    smarty-3.1.29/libs/sysplugins/smartyexception.php
    

2.3.2 Smartyの配置

展開してできたディレクトリを移動させます。

  • コマンド
    # mv smarty-3.1.29 /usr/local/maglo/vender/Smarty
    

  • 実行例
    # mv Smarty-3.1.29 /usr/local/maglo/vender/Smarty
    # ls /usr/local/maglo/vender/
    Smarty
    

2.4 ディレクトリ権限の変更

/usr/local/maglo配下のディレクトリの権限を変更します。

  • コマンド(ディレクトリ権限の変更)
    # chown -R apache:apache /usr/local/maglo/*
    

本書では、Webサーバの実行アカウントを「apache」として権限を付与しています。

2.5 Apache HTTP Serverの設定

2.5.1 maglo.conf作成

MagLoのウェブインタフェースを使用するための設定を行います。

Apache設定ファイル /etc/httpd/conf.d/maglo.conf の設定例
Alias /maglo/ /usr/local/maglo/htdocs/

<Directory "/usr/local/maglo/htdocs">
    DirectoryIndex index.php
    require all granted
    PHP_value include_path ".:/usr/local/maglo/"
</Directory>

2.5.2 Apache HTTP Serverの設定反映

設定後、以下のコマンドで設定の反映を行います。

  • コマンド
    # apachectl configtest 
    # systemctl reload httpd
    

2.5.3 管理者ユーザの設定

システムにログインするための管理者ユーザの設定を行います。 デフォルトではadminユーザが用意されています。 adminユーザのパスワードはadminです。 非常に弱いパスワードなため、必ず変更を行ってください。

ユーザ管理はコマンドで行います。 管理用コマンドは以下のディレクトリに存在します。

  • 管理用コマンド
    [インストールディレクトリ]/bin/mspasswd
    

  • パスワードの変更
    # ./mspasswd -m [インストールディレクトリ]/etc/admin_passwd admin
    Password:
    Confirm Password:
    

  • ユーザの追加
    # ./mspasswd -a [インストールディレクトリ]/etc/admin_passwd adduser
    Password:
    Confirm Password:
    

  • ユーザの削除
    # ./mspasswd -d [インストールディレクトリ]/etc/admin_passwd deluser
    

2.6 Webブラウザからのアクセス方法

以下のURLにWebブラウザからアクセスしてください。 デフォルトの設定では、以下のURLでWebインターフェースにアクセスができます。

  • URL
    http://IPアドレス or ドメイン名/maglo/
    

2.7 設定ファイル

設定ファイル/usr/local/maglo/etc/maglo.confの内容は以下のとおりです。

設定項目 設定内容
SessionTimeout セッションタイムアウトの時間(秒)。 メールマガジン配信管理Webインターフェースの操作に適用され、 指定された時間操作が行われなかった場合、次にボタンを押す等の 操作が行われた時に自動ログアウトします。
LogFacility ログのファシリティ
SendMail sendmailコマンドのパス
FromDomain エンベロープFromのドメイン ※設定方法については3.3[*]を参照
AdminDir 送受信者管理ファイル、配信ステータスを保存するディレクトリ

  • 設定例
    SessionTimeout=1600
    LogFacility=local1
    SendMail=/usr/sbin/sendmail
    FromDomain=designet.co.jp
    AdminDir=/usr/local/maglo/var
    

2.8 セッションファイルの削除設定

2.8.1 php.iniの設定

システムにログインすると、/usr/local/maglo/sess 配下にセッションファイルが作成されます。本システムでは、セッションファイルの削除を /etc/php.ini ファイルに設定します。
/etc/php.ini ファイルの以下の項目を設定してください。

  • /etc/php.ini の設定例
    session.gc_probability = 1    セッションの制御設定(デフォルト設定)
    session.gc_divisor     = 1    セッションの制御設定
    session.gc_maxlifetime = 3600 セッションファイルの削除時間
    
この設定例では、3600秒 (1時間) 経過したセッションファイルが削除されます。
session.gc_maxlifetime の値は、設定ファイル /usr/local/maglo/etc/maglo.confの SessionTimeout の項目の値よりも大きい値に設定する必要があります。

2.8.2 php.iniの設定反映

設定後、以下のコマンドで設定の反映を行います。

  • コマンド
    # apachectl configtest 
    # systemctl reload httpd
    

next up previous contents
Next: 3. 使い方 Up: MagLo Previous: 1. はじめに
2023年11月27日