soy_installer_1

SOY CMSでインストーラを削除せずにいたらどうなるか?

サーバに残っているインストーラを呼び出して再インストールしたら出来てしまった。


再インストールしたCMSにログインしてみると、


soy_installer_6


当然のことながら、サイトは存在していないが、

サイトを簡単に復元する方法があるので復元してみる。




soy_installer_10


インストーラで再インストールする時、

インストール先ディレクトリを_cms_の様な感じで、

前の管理画面URLとぶつからない様な値に変更する。


変更後にインストールを実行し、


soy_installer_5


速攻で初期管理者を作成して、


soy_installer_6


速攻でサイトの復元を行ってしまう。

復元をするためのサイトの作成をクリックすると、


soy_installer_11


この画面になる。

ここで一つ問題が!


復元するサイトのサイトIDがわからない!


というわけで、

復元するサイトIDを調べることにする。


順不同になるけど、

これから記載するのは念の為にインストーラを起動する前にやっておきたいことで、


運営しているサイトを開いて、

ソースコードを表示でソースコードを眺めておく。

※ソースコードを眺めるページはブログの詳細ページが良い


ソースコード内のimgタグを探す。

できればブログ記事内の画像が良い。


その画像のタグが、

<img src="http://ドメイン/site/files/*************.JPG" height="300" width="400" />

※新しいバージョンだとスラッシュから始まる絶対パスになっている。

こんな感じで、/site/files/のようなパスがあるけど、

ここでは、siteがサイトIDの意味になっている。


これでサイトIDを掌握することが出来た。


soy_installer_11


このサイトIDを使ってサイトを作成してみる。


soy_installer_12


サイトが出来たので、ログインしてみると、


soy_installer_13


すでにコンテンツがあるので、復元出来たことになる。


SOY CMSはサイト指定の際、

サイトのディレクトリと諸々のファイルが残っていた場合はそのファイル群を使用する様に設定するので、

サイトの作成の際にサイトIDさえ間違えなければ復元出来ます。

※様々な条件で確認したわけでないので、復元出来ないことがあるかもしれません。


最後に管理者にログインされない様に、

http://example.com/cms/adminでインストールして、

前にあったデータベースに接続出来ない様にしておく。


この時、MySQL版であれば、

/CMSインストールディレクトリ/common/config/db/mysql.dbが書き換えられているので、

そのファイルを復旧すればアカウントを取り返せる(はず)