RoundCubeMail の プラグインを管理
RoundCubeMail でプラグインを管理するのに便利そうなので、プラグインマネージャをインストールしてみた。
プラグインマネージャのインストール
※ 利用開始時に、他のプラグインを使用していないことが前提
1. 解凍とディレクトリ配置
# cd /usr/local/src/roundcube ・ ファイル名を指定してダウンロード # wget -O plugins.zip http://dev.myroundcube.com/?_action=plugin.plugin_server_get_pm ・ 解凍 # unzip plugins.zip ・ 所有権とディレクトリ移動 # chown -R apache plugins/* # mv plugins/* /var/www/html/roundcubemail/plugins/
2. 設定ファイルの変更
# cd /var/www/html/roundcubemail/config # vi config.inc.php 44 // ---------------------------------- 45 // PLUGINS 46 // ---------------------------------- 47 // List of active plugins (in plugins/ directory) 48 //$config['plugins'] = array(); 49 $config['plugins'] = array('plugin_manager');
3. MySQL テーブルの作成
RoundCubeMail の URL (http://localhost/webmail/ ) にアクセスすると SQL 文が表示される。
phpMyAdmin に roundcubemail ユーザでログインして、 SQL 文を流し込む。
- CREATE TABLE IF NOT EXISTS `plugin_manager` (
- `id` int(10) NOT NULL AUTO_INCREMENT,
- `user_id` int(10) unsigned NOT NULL,
- `conf` text NOT NULL,
- `value` text,
- `type` text,
- PRIMARY KEY (`id`),
- KEY `user_id` (`user_id`),
- KEY `user_id_index` (`user_id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
- CREATE TABLE IF NOT EXISTS `system` (
- `name` varchar(64) NOT NULL,
- `value` mediumtext,
- PRIMARY KEY(`name`)
- );
- INSERT INTO `system` (name, value) VALUES ('myrc_plugin_manager', 'initial');
- ALTER TABLE `plugin_manager`
- ADD CONSTRAINT `user_id_fk_plugin_manager` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
- ALTER TABLE `plugin_manager` DROP FOREIGN KEY `user_id_fk_plugin_manager` ;
- ALTER TABLE `plugin_manager` DROP `user_id`;
- ALTER TABLE `plugin_manager` ENGINE=MyISAM;
- UPDATE `system` SET `value`='initial|20131209' WHERE `name`='myrc_plugin_manager';
4. 詳細設定
上記の設定後、 RoundCubeMail の URL (http://localhost/webmail/ ) にアクセスしたユーザが管理者として登録される。
設定画面を出すと、以下のようなメッセージが表示される。
———————————————————————-
Welcome to Plugin Manager
Plugin Manager is about to create a privileged administration account.
To proceed, you need to confirm that you are the service administrator.
Please, create the following file in the root folder of your Roundcube installation:
xxxxxxxxxxxxxxxxxxxxxxxxxx.xxxx
Thank you!
Done
c 2012 – 2014 MyRoundcube.com. All rights reserved.
———————————————————————-
※ 正確には以下のファイルを作ることで管理者として登録されるようだ
# touch /var/www/html/roundcubemail/xxxxxxxxxxxxxxxxxxxxxxxxxx.xxxx # chown apache /var/www/html/roundcubemail/xxxxxxxxxxxxxxxxxxxxxxxxxx.xxxx
間違えて別のユーザでアクセスして管理者に登録されてしまった場合は、以下のレコードを削除して、管理者にしたいユーザでアクセスすると良い。
たぶん、もっと簡単な方法があるはずなのだが、使い方が分かり辛くて探せない。
データベース名 | roundcubemail |
---|---|
テーブル名 | plugin_manager |
レコード | 1 admins a:1:{i:0;s:5:”hogehoge”;} array |
とりあえず、上記でプラグインマネージャが使えるようになる。
すごく使いづらいが、管理できるようにはなった。