お久しぶりです。
まだ記事数の少ないブログなので記憶に残っている方はいないと思いますが、
このブログは3ヶ月位消えていたのでした。
それも、さくらインターネットの陰謀....
というのは嘘ですが
ちょっとしたバグによる勘違いで消してしまったのは間違いないです。
そういう意味ではやはりさくらのせい...
まあなんとか修復したので、こうしてあなたはこのページを見ているわけです。
ここでは、その流れを書いていきます。
※早く手順を知りたい方は、一番最後まで一気にスクロールしてください。箇条書きでまとめています。
原因は、インストール済一覧の不親切機能
さくらインターネットのコンソール画面なんですが、
使っている人は気づいていると思いますが、ここ半年?一年?くらいで新しくなりました。
ここにWebサイト/データ>インストール済み一覧という項目があります。
インストール済みのWordpressをアンインストールすることができます。
自分は3ヶ月前、別ブログで軽量化を図るために、いらないプラグインを削除したり、サーバー内を整理したりしていました。
そして、ブログを始めた極初期にテストで入れまくったWordpressがあったので、削除することにしました。
その際、どのWordpressを削除するかは、アドレス(設置先ドメイン)で選びました。
デフォルトの、IDと.sakura.ne.jpが入るドメインにはテスト用のWordpressしか入れていないと思ったから、デフォルトドメインのWordpressを削除しまくります。
そして消していくも、なんか変。
なぜかインストール済一覧には、消しても消しても、同じアドレス(設置先)のWordpressが残って出てきます。
怖くなって中断しますが時既に遅し。
このブログのファイルを消してしまっていたのでした。
問い合わせてみたところ、たしかに自分が消したのはデフォルトの、IDと.sakura.ne.jpが入る設置先のWordpressです。
しかし、ディレクトリ上同じインストール先パスに入っていた、このドメインのWordpressも消されてしまったとのことでした。
つまり、インストール済一覧に書いてある項目「設置先」は当てにならない、ということです。
「インストール先パス」をみて削除しなければいけなかった。
なんだよそれ。。。
削除するWordpressを間違えているってことじゃん。酷いバグだ。
バックアップとってても、ローカルとかに保存しとかないことにはまるごと消されるから意味がないぞ、、、
データベースだけの状態からの復旧
WordPressを消してしまい、復旧されることを祈り問い合わせをするものの、
「復旧はできない、データベースは残ってるはずだから、勝手に復旧してくれ」(意訳)
と冷たくあしらわれ、データベースなんかろくにいじったこと無い人間は途方に暮れます。
というわけで色々弄ってみました。
最初の方の作業はやってから時間が経ったので、だいぶ忘れてきたけども。
①table_prefix をいじる
データベースとWordpressファイルが分かれているなら、
この2つを結びつける機能があることだろう、と判断してググったり、Wordpress内の構造を見てみる。
そしたらどうやら、データベーステーブルに対しユニークな接頭辞があるらしい。
じゃあそれだけ変えてやればよいか。データベース自体はデフォルトでいつもと同じのをつないでいるはずだし。
ってな感じで行った作業です。
具体的には
①さくらインターネットのコンソール画面からWordpressを、このドメインにクイックインストール
②wp-configのtable_prefixを、使っていたテーブルの接頭辞に書き換える。
結果は、ダメでした。
404がでました。
なんでダメかはよくわからないままですが、他にも変えなきゃいけないことがあるのでしょう。
②クイックインストール時に変える
先程の①で、Wordpressをクイックイントールする際、接頭辞を選ぶことができることに気づきます。
なので、ここを変えてやれば諸々の設定がちょうどよいのがインストールできるのでは、と判断してやってみる。
結果はダメでした。
インストール後、ページに移るとこの接頭辞は使っている、みたいなことが出た記憶があります。
(作業自体が何ヶ月か前なので忘れてしまいまいした。。。)
停滞...
②のあと、生活が忙しい時期に入ったのでしばらく放置になります。
ブログ消えたまんまです。3ヶ月くらい
(TдT)メインブログじゃないからまだ良いけど、SEOとか1からやりなおしなんだろうな....
となり、やる気が落ちる。。。笑
けど、ちょっと余裕もできたのもあり、中途半端な状態なのも気にかかる。
ちゃんと調べるしか無いか、と思い、一発奮起します
③データベースをいじる
過去の先人の事例ももう一度ググって調べ直したり(ドンピシャな例はでてこなかった)
近い例(データベースだけ入れ替えることもあるだろう、と考察)を探したりしてみる。
しかし、どうも違うサーバーの説明プラス事例が違うから何が違うのかわかりにくかったり、
データベースのoptionsとかでSQLを実行してみろ、とかもやったが全然変化がなかったり、
データベースもこの際色々見てみたものの、プラグインを除けば、アドレスやドメインに関わる部分ってあんまりなくて、
なおのこと原因がわからなくなりました。
④Wordpressを削除して、もう一度インストール
検証の一環で、もう一度接頭辞を合わせてこのドメインにWordpressをインストールした際、
「すでにインストールされています すでに WordPress をインストール済みのようです。再インストールするには、まず以前のデータベーステーブルを削除してください。」
ああこれ、これ、②ではこれがでたんだよなあ
と思うも束の間、
「すでにWordpressをインストール済みのようです」とは?
まえ②では後ろの文言に騙されて、データベースを最初から結びつけておかないと設定が変わって使えない、と思いこんでいましたが、
ひょっとして、Wordpressを削除すればよいだけ?
というわけで、もう一度、今度はパスに気をつけながら、慎重にこのnebou-nidone.comに割り当てられたwordpressを削除していきます。
理由はよくわからないですが、結構たくさんありました。なんでそんなにインストールしてるんだ...?
その後、新しいコンソール画面のクイックインストールから接頭辞を元のにしつつ、サブディレクトリを指定せず、(元のアドレスと同じ)にインストール、
そしたら、なんとログインできました。
記事もadminから読み込めています。
まあできてなかったら、この記事どころかこのブログも無いわけですが。。。
この時、途中でWordpressを削除するのをやめてしまったので、色々ファイルが残っていたし
接頭辞を元のに変えたWordpressも、最初の不具合以降にいくつか作っていたのかも知れません。
手順を振り返りましょう
①同じドメインのWordpressを全て削除(おそらく、同じ接頭辞を割り当てたWordpressさえなければ大丈夫)
②Wordpressのクイックインストール。この際、接頭辞を用いたいデータベーステーブルのものを記載しつつ、ディレクトリは消してしまった前のWordpressがあった場所と合わせる。
(サブディレクトリ関係でwordpressって変な挙動をした気がするので、結構注意のポイントかも知れない)
③ログインできたら、ここで復活。
その他重要な作業
ちょっと安心したわけですが、この状態だと、本ページが表示されません。
この際「使っていたテーマ」がありません、と出ます。
うん、確かにそのまだテーマは入れていないね
データベースに使用するテーマが記載されているらしいけど、それが前のままになっているということ
けど、前のまま使いたいので、とりあえずテーマをアップロード
これだけで、トップの表示がされました。
トップページは開けた!
けど、トップページから投稿ページに何故かいけなくなりました。
adminからの編集はできるのに。
これは404がでるので、単純にリンク切れだと推測しました。
これは、404の画面に出ているURLの形式(投稿のアドレスに、日付が入るとか、archive-1などとなるとか)を、
wp-adminの設定>パーマリンク設定で表記を揃える
そしたら、リンク切れが修復されました。
他、画像が全部切れてしまった件があるのですがこの件は途中です。
画像自体はwordpressと一緒に消えてしまっているので、考え中です。
いや、厳密には画像ファイル自体はアップロード前のものがローカルにあるのですが、アップロードで名前が変わっていたり、サイズが違ったり諸々でそのまま上げ直しただけでは表示されないのです。
名前を編集するのは面倒なので、もう一度貼り付けていこうかなー。それも面倒だなー汗
データベースを結びつけた後の作業
①テーマをアップロード
②パーマリンク設定を実際の設定に戻す(リンク切れしている投稿ページと同じ形式にする)
③(画像関係。まだ未了。追記予定。)
まとめ
手順だけまとめます
①同じドメインのWordpressを全て削除(おそらく、同じ接頭辞を割り当てたWordpressさえなければ大丈夫)
②Wordpressのクイックインストール。この際、接頭辞を用いたいデータベーステーブルのものを記載しつつ、ディレクトリは消してしまった前のWordpressがあった場所と合わせる。
(サブディレクトリ関係でwordpressって変な挙動をした気がするので、結構注意のポイントかも知れない)
③ログインできたら、ここでブログが復活。
④テーマをアップロード
⑤パーマリンク設定を実際の設定に戻す(リンク切れしている投稿ページと同じ形式にする)。ここで投稿が復活。
⑥(画像関係。まだ未了。追記予定)
参考になる方がいたらいいなあ。