a-blogでログイン画面を一般の人にアクセスできないようにする方法
ブログのコンテンツからログイン画面にアクセスできないように a-blog はできないか? という質問があった。
1. admin.php の名前を書き換える
一番簡単な方法として、config.system.php の以下の設定を変更する方法が思いつくだろう。 しかし、ココを書き換えてもダメだった。(それじゃダメだろって事で次のバージョンの1.7で対応しました)
// [Z-03] 管理用プログラム名 $adminPhpName = "admin.php";
2. admin.php を他のディレクトリで運用する
1つ目の方法では、管理者になっている状態でどこかのリンクをクリックしたりする事で、外部のサイトでリファラー等を残したりして見つかってしまう事もあるかもしれません。
例えば、以下のような2つのブログを設置します。
- https://kazumich.com/blog/ (公開するブログ)
- https://kazumich.com/blogAdmin/ (非公開のブログ)
(公開するブログ)からは、admin.php や、管理ページで利用する各種プログラムを削除します。 これでログイン機能が無いという事になるので、どうやってもログインできなくなります。
(非公開のブログ)これの存在がバレたら同じ事なのですが、とりあえずBASIC認証等でさらに厳重にアクセス制限しておきましょう! config.system.php と config.server.php を(公開するブログ)からコピーして(非公開のブログ)に設置し、以下の設定のみ書き換えます。
// アーカイブ・ファイルにアクセスするためのURL $archivesURL = "https://kazumich.com/blog/archives/";
(非公開のブログ)でアップした画像は(公開するブログ)の archives に書き込む設定をする事になり、管理系の仕組みを一般ユーザーに見つからないようにする事ができます。