WordPress で作成した Web サイトをセットアップしてたところ、以下のようなエラーが発生した。
2020/03/03 12:14:29 [error] 12879#12879: *5728 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Error: Class 'DOMDocument' not found in /home/username/public_html/example.com/wp-content/themes/cocoon-master/lib/open-graph.php:102
PHP で DOMDocument が無いという場合は大抵 php-dom か php-xml あたりをインストールすると解決する。サーバーは Ubuntu なので apt でのインストールを試みる。
$ sudo apt install php-dom
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package php-dom is a virtual package provided by:
php7.4-xml 7.4.3-4+ubuntu18.04.1+deb.sury.org+1
php7.3-xml 7.3.15-3+ubuntu18.04.1+deb.sury.org+1
php7.2-xml 7.2.28-3+ubuntu18.04.1+deb.sury.org+1
php7.1-xml 7.1.33-12+ubuntu18.04.1+deb.sury.org+1
php7.0-xml 7.0.33-23+ubuntu18.04.1+deb.sury.org+1
php5.6-xml 5.6.40-24+ubuntu18.04.1+deb.sury.org+1
You should explicitly select one to install.
E: Package 'php-dom' has no installation candidate
どうやら明示的にバージョンを指定しないといけないらしい。現在 PHP7.4 を利用しているので php7.4-xml をインストールする。
$ sudo apt install php7.4-xml
これで HTTP サーバーを再起動すれば OK だった。
コメント