HaneCa

独り立ちへ向けた長い道

SimpleXML / XMLWriter PHP moduleのインストール (Ubuntu)

投稿日: 2019年3月12日 最終更新日: 2020年3月23日

Ubuntu上で運用しているWordpressの管理画面を久々に見ると、次のような警告が表示されていました。

The official Amazon Web Services SDK requires PHP 5.5+ with SimpleXML and XMLWriter modules, and cURL 7.16.2+ compiled with OpenSSL and zlib. Your server currently has no SimpleXML PHP module and no XMLWriter PHP module.
You can deactivate the WP Offload Media Lite plugin to get rid of this notice.

これは、利用しているWP Offload Media Liteと言うプラグインがAmazon Web ServicesのSDKを利用しており、このSDKがSimpleXMLと言うモジュールとXMLWriterと言うモジュールを必要としているが、このサーバにはインストールされていないと言うエラーでした。

ここで、確認すべきことは、次の4つになります。

  • PHP が5.5以上であること
  • SimpleXMLがインストールされていること
  • XMLWriterがインストールされていること
  • cURLが7.16.2以上であり、かつ、OpenSSLとzlibとがcURLをインストールする際に組み込まれていること

以下ではこれらをインストールする方法を紹介します。

 

1.PHPが5.5以上であること

この確認方法としては、次のコマンドを実行します。

$ php -v
PHP 7.0.33-0ubuntu0.16.04.2 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.33-0ubuntu0.16.04.2, Copyright (c) 1999-2017, by Zend Technologies

この場合、インストールされているPHPが7.0.33であることが分かりました。

 

2.SimpleXML / XMLWriterのインストール状況の確認方法

まず、SimpleXMLとXMLWriterがインストールされているかを次のコマンドで確認します。

$ php -m | grep -e XMLWriter -e SimpleXML
$

実行した結果、何も表示されなければ、インストールされていないことになります。もし、表示されるとそのモジュールはインストールされているということになります。

 

3.SimpleXMLのインストール方法

SimpleXMLのインストール方法は単純で、次のコマンドを実行するだけです。

$ sudo apt install php7.0-xml

私の環境の場合、PHPのバージョンが7.0だったため、phpの後にくるバージョン情報の部分は7.oとしました。必要に応じて変更してください。

インストール後に、もう一度、インストールされたPHPモジュール一覧をチェックし、SimpleXMLが表示されるようになれば、正しくインストールされています。

 

4.XMLWriterのインストール方法

次にXMLWriterをインストールします。もし、SimpleXMLをインストールした場合、XMLWriterも同時にインストールされるため、何もする必要がありません。

しかし、上記のSimpleXMLをインストールを実施していない場合は、上記の方法でインストールしてください。

インストール後の確認方法については、上記と同じですが、注意すべきことはgrepでXMLWriterだけを表示させる場合、XMLWriterではなく全て小文字でxmlwriterで書かないと表示されません。

 

5.cURLが7.16.2以上であること

cURLのバージョンや関連づけられてインストールされているモジュール一覧は次のコマンドで確認することができます。

$ curl --version
curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets

これを見ると、cURLのバージョンは7.47.0であること、zlib/1.2.8と関連づけてインストールされていること、OpenSSLと関連づけてインストールされていることがわかりました。

 

最後に

最後にこれらを適用するため、サーバを再起動してください。

 

参考資料

 

“SimpleXML / XMLWriter PHP moduleのインストール (Ubuntu)” への1件のコメント

  1. Antoine より:

    Thank you! For us it was the missing `php7.0-xml`.

Antoine へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください