こんにちは。WebディレクターのNです。
先日、WordPressの移行作業の工程でなぜかエラーが頻発してしまい、公開までかなり手間取ってしまいました…。今回は、その反省と忘備録もかねてエラーの原因と解消方法をまとめてみたいと思います!少しでも皆さんの参考になれば嬉しいです。
※2022年現在の情報です。
※記事中のイメージはすべてダミーです。
目次
1.WordPressのインポートもファイルアップロードも出来ない
2.原因はWordPressのインポート容量不足でした
3.さらなるPHPエラーが発生(mb_convert_kana() ~)
4.拡張モジュールmbstringが設定されていないことが原因でした
1.WordPressのインポートもファイルアップロードも出来ない
WordPressのプラグイン「All-in-One WP Migration」と「File Manager」をつかってインポートとファイルアップを試みたところ、以下のメッセージが表示され、データを移行することが出来ません。
Server message : Can’t create directory: Disk quota exceeded error -140: remote mkdir failed |
・インポート
キャプチャ画像の状態で止まり、インポート不可
・ファイルマネージャー
同じくキャプチャ画像の状態のまま動かなくなる。アップロードだけでなく、フォルダ作成などでもエラー。
2.原因はWordPressのインポート容量不足でした
データの読み込み途中でフリーズしている状況から、もしかしてこれはWordPresの容量が足りていないのでは…?と思い、あらためて管理画面を確認。
WordPressの最大アップロード容量は「メディアライブラリ>新しい画像や動画をアップロードする画面を表示」で確認することができます。
……なんと最大アップロードサイズは16MBしかありませんでした。このサイズを超えるファイルをアップロードしようとしたために、エラーが発生していたのですね。
容量の上限を増やす対処方法はいくつかありますが、今回はphp.iniファイルの作成で無事解決しました。
<php.iniファイルの作成手順> ソースコード記述ファイル.txtを作成し、.iniにリネームしてルートディレクトリに格納 memory_limit = 任意の数 参考にさせていただいたサイト様:https://fox-wp.com/wordpress-upload-filesize/ |
3.さらなるPHPエラーが発生(mb_convert_kana() ~)
サーバーの容量の問題が解決し、ファイルアップロード、インポートともに無事完了出来ました。が、ブラウザを検証してみたところ新たなエラーメッセージが…。
Fatal error: Uncaught Error: Call to undefined function mb_conbert_kana()~ |
4.拡張モジュール「mbstring」が設定されていないことが原因でした
結論からお伝えしますと、こちらはサーバー環境にmbstring(PHPでマルチバイト文字=ひらがなや漢字などの文字を扱うための拡張モジュール)がサーバーに設定されていないことが原因でした。
よくよく考えてみたら今回は海外のサーバー(1バイト言語圏)を契約していたので、なおさらインストールされていないですよね……うかつでした。
今回は、下記サイト様の手順でmbstringを設定したところ、あっさり解決しました。
参考にさせていただいたサイト様:https://techacademy.jp/magazine/39850#ta-toc-2
以上、インポートがうまく行かない&PHPエラーの原因と解決方法でした。
本番公開のタイミングで慌てないためにも、サーバーやWordPresの環境設定はちゃんと事前に調べておくことが大切ですね!
WordPressにてついてはまだまだ知らないことがたくさんありそうなので、また新たな気づきがありましたら引き続きこのコラムで紹介していきたいと思います。
ではまた次回!