Plesk覚書【随時追記】


GMOクラウドのALTUSでPlesk付きのCentOSを利用していて分かったことメモ。
基本的にはPleskの仕様まとめです。
Pleskライセンスの種類によって管理画面の構成なども違うので、上位版ではまた違うかもしれません。

環境

OS:CentOS 7.2 64bit with Plesk12.5 20161101
Pleskライセンス:Web Admin Edition(10ドメイン)

ウェブサイトとドメイン

ドメイン数はライセンスによって上限が違う。(10,30,無制限)
ドメインーサブドメインの関係の場合デフォルトではサブドメイン名のディレクトリがメインドメインスペース内にできる。
サブドメイン作成時にドキュメントルートを/httpdocsにすればファイルを共有できる。
サブドメインとして作成したドメイン名はメールアドレスとしては利用できないので、メールアドレスを使い分ける必要がある場合はドメインとして作成する必要がある。
この場合でもウェブスペースとして既存のものを選択すればファイル共有が可能

データベース

まずはドメインを選択してその中にデータベースを作成していく。
ドメインを選択せずにDBを作成することはできない。
ドメインに関連付けることができるが関連付けなくても接続は可能。
(↑ここの違いは検証してないです)
他ドメインのDBにもプログラムによる接続は可能。
phpMyAdminでの閲覧は当該ドメインの中からしか不可。

エラーログ

** 基本は/var/log内に格納される**

-- 格納場所
Web系1 /var/www/vhosts/ドメイン名/log/error_log
Plesk系 /usr/local/psa/var/log
システムエラー /var/log/message
PHP(fpm利用) /var/log/plesk-php*2-fpm/error_log
PHP(OSデフォルト利用) /var/log/php-fpm/error_log

ここのログはPlesk管理画面から確認できる
*部にはPHPのバージョンが入る(PHP5.6なら56)

各種アプリケーションのインストール

基本的にドメイン下にインストールされる

アプリケーションとしてconcrete5をインストール

普通にインストールしようとしたらできなかったのでメモ

mcrypt入ってないよ\(^o^)/

って言われるのでいれる。
https://support.plesk.com/hc/en-us/articles/213925125-How-to-install-the-php-mcrypt-module-

CentOS7.2なので

# yum install epel-release
# yum install php-mcrypt
# /usr/local/psa/bin/php_settings -u
# systemctl restart httpd

>ツールと設定 >一般設定(PHP設定) で該当PHPの拡張にmcryptがあってチェックが入ってればmcryptのインストールは完了

そのあとアプリケーションからconcrete5のインストールボタンを押せばOK( ´∀`)bグッ!

メールをトリガーにしてプログラムを動かす(PHP)

[email protected] あてのメールを /var/www/vhosts/example.com/script/mail.php で処理したい!

メールアドレスを作成

pleskの管理画面からメールアドレスを作成する。
ユーザは実在する必要はないので、顧客パネルへのアクセスのチェックは外す

該当メールアドレスをユーザに割り当て

ここでのユーザは /etc/aliases で利用するためのもの
pleskユーザとの関連はなし
ここではユーザ名を trigger として設定
# vim /var/spool/postfix/plesk/virtual

example.com anything
[email protected] trigger

virtual.dbを更新する

# postmap /var/spool/postfix/plesk/virtual

これをしないと
warning: database /etc/postfix/virtual.db is older than source file /etc/postfix/virtual
とかって怒られてしまったのでw

aliasでPHPを指定

# vim /etc/aliases

trigger: |"/usr/bin/php -q /var/www/vhosts/example.com/script/mail.php"

# newaliases
# systemctl restart postfix

updateに注意!

おそらくアップデートが原因だと思うのですが、いつの間にかaliasesが解除されてました。。。
存在しないアドレス宛てのメールを該当アドレスに転送させてトリガーにしていたのですが、aliasesが解除されていたのを修正したら「存在しないメールアドレスです」というバウンスメールが。。。
そこの設定さっきPlesk管理画面でやったぞ??となりながら試行錯誤。
結果、エイリアスの設定等をすべて終わらせて、postfix reloadの後で改めて管理画面から設定したところ反映しました( ´∀`)bグッ!