私のでくわしたWordPress の不具合2件に対する対処策
December 10, 2016 – 10:20 amこのところ、WordPress がらみでいろいろな「不具合」にでくわしている。その都度対処しているが、その原因は、OS の変更とかWordpress自身の問題とかいろいろあるようだ。
私のでくわした不具合2件にとった方策についてメモしておいた。
WordPress 動作の前提条件(Requirements):
このブログで使用している WordPress のVersion は4.7。現時点で、Wordpressを動作させるうえで必要なホストの条件(Requirments)は次のようになっている(WordPress.org Rquirements):
To run WordPress we recommend your host supports:
- PHP version 7 or greater
- MySQL version 5.6 or greater OR MariaDB version 10.0 or greater
- HTTPS supports
前回書いたように、PHP-7.1、MySQL-5.7.16をインストールしており、WordPressを動作させる前提条件はクリアしている。が、しかし、いろいろ不具合にでくわしているというのが実情。
mail()が動作しない:
コメントを受け取るとブログ管理者充てにメールが送られるような設定になっている。Scientific Linux 7.2 にアップグレードする以前は届いていたメールが届かなくなっていた。
ログ(/var/log/maillog)をみると、次のようなエラーが見つかった:
Dec 9 16:54:07 server01 postfix/sendmail[19650]: fatal: open /etc/postfix/main.cf: Permission denied
/etc/postfix/main.cf が開けないという。このファイルの属性を確認しても問題ない。そこで、我がホストSL-7.2にアップグレードして以来、SELinuxを有効にしていることから、SELinuxを無効にして、その動作を確認すると、エラーがクリアされている。SELinuxがらみで落ちていることを把握。
そこで、/var/log/audit/audit.log を確認してみると、以下のようにAVC拒否が発生している:
type=AVC msg=audit(1481270047.634:84845): avc: denied { read } for pid=19650 comm="sendmail" name="main.cf" dev="dm-0" ino=886280 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:postfix_etc_t:s0 tclass=file
これを避けるため、以下のようにSELinuxポリシーの一部を変更するためブール値httpd_can_sendmail を on に変更:
setsebool -P httpd_can_sendmail on
これによりSELinuxを有効にした状態でmail()が動作可能になった。
Postのエディタに見られた不具合
ここ数週間、Postのテキストエディタに不具合がみられた。不具合は、テキストをsaveしたのち、画面上で新たに文字を挿入しよとすると、カーソルがエディタの最下部に飛んでゆくというもの。
POSTの編集作業に困難を極め、作業負荷が大きくなっていた。
試行錯誤してみるた結果、この障害、ブラウザとWordPressのエディタの相性の問題、IE-11上では障害が発生するが、Safariでは発生しないことが明らかに。
結論: WordPressのPost編集をIE-11上で行うと上記したような障害が発生する。 避けるべし。