保護されていない通信がでるのでブログをエックスサーバーに引っ越したメモ

この自分のブログのSSL化とテーマの変更が無事に完了しました。

いくつかはまったことがあったのでメモです。

あと、今までCPIのレンタルサーバーでこのブログも運営していたのですが、残念ながら無料SSLは出そうにないので引っ越し先はエックスサーバーです。

目次

DBの引っ越しでエラー:プラグインが作ったテーブルに苦しまされる

WordPressのDBからエクスポート(MySQL5.5)。新しいMySQLにインポート(MySQL5.7)しようとしたところ、

Specified key was too long; max key length is 1000 bytes

というエラー。

ぐぐっていくつかのサイトで記事を見かけたのですがうまくいかず。

mysqldumpのインポートでエラー発生「Specified key was too long; max key length is 1000 bytes」解消方法はinnodbの設定・削除でした

DB-Managerというプラグインから移管しようとするも、それもうまくいかず。

どの時点でエラーが起こっているかをエクスポートされたsql文をみたところ、

CREATE TABLE IF NOT EXISTS `wp_commentmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`comment_id` bigint(20) unsigned NOT NULL DEFAULT ‘0’,
`meta_key` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_ci,
PRIMARY KEY (`meta_id`),
KEY `comment_id` (`comment_id`),
KEY `disqus_dupecheck` (`meta_key`,`meta_value`(11)),
KEY `meta_key` (`meta_key`(191))
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=2708

このように、大本のWordPressのテーブルではなくプラグインインが作成したテーブルを作成しているときにおこっているようです。

なので、思い切って自分の記事に関係なさそうなプラグインのテーブルをバサバサ削除しました。

実は、このなかちょんブログは初めて作成したWordPressのサイトだったので、いろんなプラグインをインストールして試して放置だったり、プラグインは削除したものの、テーブルは残ったまんまだったりしました。

で、結果、当初300MB(圧縮前)あったsqlファイルは11MBまでスリムになり、無事に新しいDBにインポートすることができました。

でも、今回は個人の趣味のブログだったからそういうことができたけど、これが仕事だったら大変でした。

なので、

注意
WordPressでプラグインいろいろ入れるとサーバー引っ越しの時に手間が多くなるよ!

と思いました。

もちろん、それなりに詳しい人に依頼できるのであれば解決してくれるとは思いますが、依頼できる人がいなかったりお金かけれないサイトで、特定のプラグインの機能に大きく依存している場合はそういうリスクがあります。

HTTPSでエラー

.htaccessでの転送がうまくいってなくて、httpのURLでアクセスすると、当然ながらget_permalink()やget_template_directory_uriがhttpのURLを吐いてエラーがおこるという問題が発生しました。

これは、気づくまで時間がかかったけど、気づいてからはすぐに変更できました。

まとめ

もっと簡単に引っ越し&SSL化できると考えていたのですが、いろいろはまってかなり時間がかかってしまいました。

他のサイトもSSLをすすめたいとおもいます。