私のでくわした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上で行うと上記したような障害が発生する。 避けるべし。


Post a Comment