CentOs9 phpListを構築する手順
CentOs9環境にWEBのメール配信ツールである「phpList」を構築するまでの手順を記述してます。事前に「php」と「mysql」と「apache」のインストールと、DBのユーザーの作成もあるので、そこそこ時間がかかります。
環境
- OS CentOS Stream release 9
- php 8.2.0RC4 (cli)
- mysql 8.0.30
- Apache Apache/2.4.53 (CentOS Stream)
事前環境準備
事前に必要なツールをインストールしておきます。
まずは、webサーバー「Apache」をインストールしておきます。
※ここでは起動と自動起動も有効しておきます。
$ sudo dnf install httpd -y
$ sudo systemctl enable httpd --now
次に「php」をインストールします。
$ sudo dnf https://rpms.remirepo.net/enterprise/remi-release-9.rpm
$ sudo dnf config-manager --set-enabled remi
$ sudo dnf update
$ sudo dnf module list php ← インストールできるバージョンを確認
$ sudo dnf module enable php:8.2 -y ← 8.2 をインストール
$ sudo dnf install php-gd php-curl php-fpm php-mysql php-mbstring php-zip php-xml
次に「mysql」をインストールします。手順が長いので以下を参照下さい。
インストールが終われば、phpList用の「ユーザー」と「DB」を作成しておきます。
※ここでは、ユーザー「phpList」とDB「phpList」を作成してます。
mysql> create user 'phplist'@'localhost' identified with mysql_native_password by 'phplist123!!!';
mysql> create database phplist;
mysql> grant all on phplist.* to 'phplist'@'localhost' with grant option;
phpListダウンロード
こちらのサイトからダウンロード用のURLを取得して「wget」でダウンロードします。
※ここでは「3.6.10」が最新バージョンでした。
$ wget --content-disposition https://sourceforge.net/projects/phplist/files/phplist/3.6.10/phplist-3.6.10.zip/download
「/var/www/phplist」に解凍します。
$ sudo unzip phplist-3.6.10.zip -d /var/www/phplist
権限を変更しておきます。
$ sudo chmod -R 775 /var/www/phplist/phplist-3.6.10/public_html
「apache」の「DocumentRoot」も変更しておきます。
$ sudo nano /etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/phplist/phplist-3.6.10/public_html"
「DirectoryIndex」にも「index.php」を追加しておきます。
$ sudo nano /etc/httpd/conf/httpd.conf
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
設定を反映させるため再起動します。
$ sudo systemctl restart httpd
「/var/www/phplist/phplist-3.6.10/public_html/lists/config」の「config.php」に「DB」への接続情報などを記載しておきます。
// what is your Mysql database server hostname
$database_host = 'localhost';
// what is the name of the database we are using
$database_name = 'phplist';
// what user has access to this database
$database_user = 'phplist';
// and what is the password to login to control the database
$database_password = 'phplist123!!!';
// 日本語に設定
$default_system_language = "ja";
外部のメールサーバーを使用する場合は、以下も追加します。
define('PHPMAILERHOST', '外部サーバー');
// MTAサーバーへアクセスするユーザ名を設定
$phpmailer_smtpuser = 'testuser';
// MTAサーバーへアクセスするユーザのパスワードを設定
$phpmailer_smtppassword = 'pass';
phpList初期設定
ブラウザから「http://プライベートIP or サーバーアドレス/lists/admin」 にアクセスすると以下の画面が表示されると思います。
「Initialize Database」をクリックしてDBを初期化します。
以下の警告がでている場合は「/var/www/phplist/phplist-3.6.10/public_html/lists」の「config.php」に
最後の方にでも「$default_system_language = “ja”;」を追加します。
リロードすると警告が消えます。
名前やメールアドレスやパスワードを入力し「Continue」をクリックします。
問題なければ全てOKと表示されます。
newを受信するかどうか選択して「phpListSetup」をクリックすれば構築は完了です。
後は、ユーザー「admin」で設定した「パスワード」でログインすることが可能です。
-
前の記事
php URLからパラメータを除外して取得する 2022.11.25
-
次の記事
MariaDB 両側の半角スペースを除去する 2022.11.26
コメントを書く