【CommunityServer】2バイト文字で作成してしまったブログの管理復旧
Community Server 1.0.0 系列では,
[管理] > [ブログ] > [ブログの管理] から
■2バイト文字を含む [名前] を指定したブログを作成してしまうと,管理画面への呼び出しが「リソース不明」のエラーになってしまうバージョンがあります。
この状態になってしまうと,
・ブログの削除機能がブログの管理画面からしか呼び出せない
ために,管理不能,削除不能,投稿不能のファントムブログが出来上がってしまいます。
これは,管理画面の呼び出しに使用される 「App」 パラメータが2バイト文字に対応していないことによります。
(1.1.0 系列 では2バイトは推奨されていませんが,対応しています)
■ブログの管理画面,新規作成で指定する「名前」はブログの「タイトル」ではなく,ブログを一意特定するためのキー文字列です。
さて,この管理不能になってしまったブログを再び管理したり,削除したりするためには,2バイトで指定してしまった「名前」を半角英数のみに修正してあげる必要があります。
■■ Blog,Forum などの名前は,データベース内の [cs_Sections] テーブルに格納されています
この [cs_Sections] テーブルの列のうち,以下の2つの列を更新してあげることによって,「名前」を変更することができます。
[Name] :管理画面での表示用の文字列,実体的なキー名ではないため,表示のみが変更される
[ApplicationKey]:URL の組み立てや様々な機能を呼び出すために使用される一意キー名。これを更新することによって実体的な名前を変更することができる
UPDATE [cs_Sections] SET [Name] = '<newName>' , [ApplicationKey] ='<newName>' WHERE [ApplicationKey] = '<oldName>'
このクエリを発行して,新しい名前を半角英数のみに更新してあげることによって,アクセスできなかったブログが管理できるようになります。
※ Community Server のバックエンドデータベースを操作することは,CS の機能に重大な障害を引き起こす可能性がありますので,慎重に,自己の責任において操作してください。