PHPListでエックスサーバーにメール配信システムを構築する

Web開発

PHPListはオープンソースのメール配信システム

メールマガジン配信などを検討する場合、SendGridやMailChimpなど無料でも使える多機能メール配信システムは多くありますが、利用する場合は管理しているメールアドレスをすべて預けることにもなり、二の足を踏んでしまうこともあるかと思います。

自分もそのように考えて探してみたところ、PHP製でオープンソースのメール配信システム「PHPList」に辿り着きました。自分たちでメール配信システムを構築してしまえば、管理する情報を全てサーバー内に収めることができるうえ、月に何通までという制限もなくメール配信が行えます。

ということでXserverにインストールし、自前で使えるメール配信システムを構築してみます。

phplist公式のインストールマニュアルはこちら。ただし英語です。

mysqlデータベースを作成

PHPListにはデータベースが必要です。まずはエックスサーバーの管理画面から、MySQLデータベースを追加しておきます。データベース名などは後で使うのでメモしておいてください。

また、「サーバーパネル > MySQL設定 > MySQL情報 」で確認できる「MySQLホスト名」もメモしておきます。例)mysql20.xserver.jp / mysql20a.xserver.jp

MySQLの設定 | レンタルサーバーならエックスサーバー
レンタルサーバー「エックスサーバー」のご利用マニュアル|MySQLデータベースの作成方法やMySQLデータベースのバックアップを取る手順について案内しています。
WordPress 手動インストール手順 | レンタルサーバーならエックスサーバー
レンタルサーバー「エックスサーバー」のご利用マニュアル|「WordPress」をお客さまご自身でインストールするための手順を記載しています。エックスサーバーでは簡単な操作で「WordPress」を設置できる「簡単インストール」機能も提供して...

phplistの最新版を取得

エックスサーバーにssh接続します。ssh接続についてよくわからないという方はFTPのみでも以降の操作は可能です。

SSH設定 | レンタルサーバーならエックスサーバー
レンタルサーバー「エックスサーバー」のご利用マニュアル|エックスサーバーではSSH接続機能を提供しています。当マニュアルではお客様のサーバーアカウントへSSHで接続するための手順を記載しています。

wgetでzipファイルを取得し解凍

phplistのダウンロードページには、「ZIP」「TGZ」「Docker Image」の3種類があります。今回はZIPを選択。ダウンロードはSourceForgeから行います。

FTPの場合

リンク先へ飛ぶと自動的にダウンロードが始まります。

zipファイルは解凍して、「phplist-<バージョン>/public_html/lists」にある「lists」ディレクトリのみをサーバにアップしてください。

サーバの「public_html/phplist/lists」ディレクトリにアップロードしたとして進めます。

sshの場合

サーバーからwgetで直接ファイルを取得できます。ダウンロードアドレスは、「ZIP」のリンクを右クリックし、リンクアドレスをコピーすれば取得できます。

phplist-xserver-mailsystem-zip
phplist-xserver-mailsystem-zip

$ cd ~/ut-work.com/public_html
$ mkdir phplist
$ cd phplist
$ wget -–content-disposition https://sourceforge.net/projects/phplist/files/phplist/3.4.5/phplist-3.4.5.zip/download
$ unzip phplist-3.4.5.zip
$ mv phplist-3.4.5/public_html/lists .

wgetの「–content-disposition」についてはこちらを参照。

config.phpを変更

サーバの「lists/config/config.php」ファイルを修正します。直接編集できない場合は一度ローカルで編集し、サーバにアップしてください。

ここには事前に作成したMySQLデータベースの情報を設定します。以下は例で、値は変更してください。また、実際のconfig.phpにはコメントが含まれているので同じ名前の指定があるところを修正してください。

$database_host = "mysql20a.xserver.jp";
$database_name = "hoge_dbname";
$database_user = "hoge_dbuser";
$database_password = "hogehoge";
define('TEST', 0);

「define(‘TEST’,1)」というところは、「1」を指定でテストモード、「0」を指定で本番モードになる設定箇所です。「0」を設定し、本番モードにしておきます。

phplistの初期設定

初期設定を行うために、ブラウザで「lists/admin」にアクセスします。インストールしたのが「https://ut-work.com/phplist」だった場合は、「https://ut-work.com/phplist/lists/admin」となります。

phplist-xserver-mailsystem-initdb
phplist-xserver-mailsystem-initdb

表示されている「initialise Database」をクリックして、データベースを初期化しましょう。正常に完了すると、アカウント登録が求められます。

phplist-xserver-mailsystem-initaccess
phplist-xserver-mailsystem-initaccess

後で変更できるので適当で構いません。パスワードはメモしておきましょう。

ただしここで注意です!この後ログインで使用するのは「admin」というデフォルトのログイン名になります。自分で入力する「your name」はメール配信などに使うもので、ログイン名ではありません。自分はここで勘違いしてログインできず悩みました。

phplist-xserver-mailsystem-login
phplist-xserver-mailsystem-login

無事ログインに成功すると以下のようにダッシュボードの画面が表示されます。

phplist-xserver-mailsystem-success
phplist-xserver-mailsystem-success

まとめ

LINEなどのチャットが普及したとはいえ、まだまだメールは重要なツールであることに変わりはありません。自身で管理しているサーバがある場合は、少しの手間で独自のメールスタンドが構築できるので、小さな規模から始めてみるのも面白いと思います。

コメント

タイトルとURLをコピーしました