この数週間、悶々と悩んでいたブログの文字化け(ラテン語になっちゃった)問題。
なんてったって2002年頃からの記事を失うわけにはいかん!
特にこの数年は更新頻度を思い切り増やしてせっかく書いてたので。
ということで、2週間弱ほど、仕事帰り、呑みに行かない日は電車の中でサポートに問い合わせながら、あれやこれやとうなってました。
<発生時の様子>
プライベートで借りてるレンタルサーバーのマイグレーションの煽りを受けて絶賛トラブル発生中。1.wpで構築したサイトAが初期化された
→マイグレーションでの移行ミスとの事。再度個別移行してもらい、めでたく復旧。2.wpで構築したブログサイトがhttp500エラーで真っ白。
→何かのプラグインに問題があるよう。プラグインフォルダのネーム変更で500エラーは回避。
イマココ-————3.ログインしようとすると権限エラーでログイン出来ない
4.日本語が文字化け。phpmyadminでテーブル覗いたらデータ自体が文字化け?
ひょえ〜(ToT)
<ここまで>
ということで、その後の経緯。
5.移行トラブルかと思っていたので、サポートにお願いして、移行前のデータを改めてエクスポートしてもらうも変わらず。
6.エクスポート時にphpMyAdmin の癖でパラメータ間違えてると、データがおかしくなるという事例を知り、サポートへエクスポート時のパラメータを指定して改めてエクスポートしてみるもだめ。
7.旧DBへの接続情報を教えてもらってブログの接続先を旧DBに差し替えるも駄目。
8.phpMyAdmin の接続先を旧DBに変更してテーブルの中身を覗くと、まさかのラテン文字。
9.もしやと思い、旧テーブルと新テーブルをそれぞれエクスポートしたものをファイル比較(Xcodeに入っているFileMergeでコンペアしたところ、やっぱり差分は無し。
そもそも旧テーブルの時からおかしかったんだなと。
ということは、旧テーブルがいつからおかしいのだろうと思い、なんとか残っていた2016年ごろのダンプファイルをみてみると、まさかまさかのラテン文字。
【原因判明】
マイグレーションによって変わった環境のせいだ。
<変更点>
FastCGI版PHP5.3から、FastCGI版PHP7.1に変更
MySQL 5.1 → 5.7
4〜5のやり取りの中で、サポートからPHPのバージョンによる問題かも(字コードのデフォルト値)ということで、サポート側で、PHPのバージョンダウンは対応してくれてたので、PHPのバージョン問題ではないと、安心してたら、
7.1→5.6へのバージョンダウンをしてくれてた。
なぜ、マイグレーション前のバージョンではなくて5.6にしてたんだろう。。。
ということで、原因はPHP5.3からバージョンを上げたことがラテン文字に変換されてしまったということはわかったので、
応急処置として、
10. PHPののバージョンを5.3に変えました
これでやっと表示が日本語に戻り、無事にログインもすることが出来るように。
ブログ復旧ー!!まさかのPHPバージョン問題。さて根本対応はどうしたもんか。もう少しサポートの方にも付き合ってもらおう。 #マイグレーション #日本語がラテン語に #原因はPHP
708さん(@radio708)がシェアした投稿 –
ただ、非推奨ということで、さて根本対応はどうしたものか。。。
コメント