やっぱりSELinuxってやっかい

今目下奮闘中なのがFreeBSDのセットアップ
そのFreeBSDのサーバでWordPressを使えるようにしたのだが、いつもならテーマのセットアップでエラーが出るのに、エラーが出ずにインストールできた

しかし、CentOS の場合、何故かエラーになる。
ふと思いついたのは、SELinuxの存在だ。

もしかしたらそれが悪さをしているのかも知れないと思って、「setenforce 0」で一時的に無効にしてテーマのセットアップを試してみた。

すると問題なくセットアップ画面が表示される。
今までエラーが出たのはこれが原因だったようだ

RedHatのドキュメントによると、SELinuxをdisableにしていない場合、SELinuxはApacheが外部ネットワークと通信するのを許可しない。なので、テーマだけでなくプラグインの追加とか、外部ネットワークとの通信が発生する処理なら全て同じエラーが発生する。

との記述があり、外部ネットワークと通信するのを許可しなければならないようだ。

と言う訳で、その問題を解決するために検索すると「setsebool httpd_can_network_connect 1」として、ブール値を設定してやれば良いことが分かった。

設定後にテーマのインストールを実行してみるとエラーは表示されずに問題なくインストールできる。

ただ、そのままテーマをインストールしようとすると別の問題が生じる。

要求されたアクションを実行するには、WordPress が Web サーバーにアクセスする必要があります。 次に進むには FTP の認証情報を入力してください。 認証情報が思い出せない場合は、ホスティング担当者に問い合わせてください。

と表示されてしまう。

これを解決するにはwp-config.phpに以下の1行を追加すればよい。define(‘FS_METHOD’,’direct’);
どの位置でも良いようなので、一番最後に追加してみた。

すると今度は問題なくインストールが続行できる。

今まで気になっていたテーマやプラグインのインストールだが、今回、FreeBSDのサーバを構築する過程で原因が判明することになった。

今回の一件でもまた勉強になったよ。

コメント

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