ROUNDCUBE: различия между версиями
imported>Vix (Новая страница: «=='''Global Address Book for Roundcube'''== '''Roundcube''' из коробки поддерживает '''LDAP.'''.<br> Смотрите файл '''config/def...») |
Vix (обсуждение | вклад) |
||
(не показано 10 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
=='''Global Address Book for Roundcube'''== | =='''. Global Address Book for Roundcube'''== | ||
'''Roundcube''' из коробки поддерживает '''LDAP.'''.<br> | '''.Roundcube''' из коробки поддерживает '''LDAP.'''.<br> | ||
Смотрите файл '''config/defaults.inc.php''' для примера (раздел '''ADDRESSBOOK SETTINGS''') - читать [https://github.com/roundcube/roundcubemail/wiki/Configuration%3A-LDAP-Address-Books LDAP-Address-Books] | Смотрите файл '''config/defaults.inc.php''' для примера (раздел '''ADDRESSBOOK SETTINGS''')<br> | ||
- читать [https://github.com/roundcube/roundcubemail/wiki/Configuration%3A-LDAP-Address-Books LDAP-Address-Books] | |||
Если же надо использовать '''SQL''', то есть соответствующий плагин [https://plugins.roundcube.net/packages/johndoh/globaladdressbook globaladdressbook] | Если же надо использовать '''SQL''', то есть соответствующий плагин [https://plugins.roundcube.net/packages/johndoh/globaladdressbook globaladdressbook] | ||
=='''. Добавление плагина roundcube для антиспама''' == | |||
Всем доброго времени суток. Сегодня я расскажу Вам как поставить плагин на веб морду (riundcube) появится кнопка пометить как спам и наоборот вытащить из спама (т.е. снять метку СПАМ) | |||
Приятная особенность плагина состоит в том, что он позволяет через sa-learn обучать SpamAssassin | |||
И так поехали<br> | |||
Скачиваем плагин, можно [https://github.com/johndoh/roundcube-markasjunk2 здесь]<br> | |||
вытаскиваем из архива и помещаем его в плагины riundcube. Путь примерно такой /roundcubemail/plugins<br> | |||
Далее:<br> | |||
Редактируем конфиг main.inc.php | |||
находим параметр | |||
$rcmail_config['plugins'] = array(); и дополняем его $rcmail_config['plugins'] = array(markasjunk2); | |||
если у вас уже стоят плагины, просто перечисляете их через запятую | |||
Открываем конфиг плагина plugins/markasjunk2/config.inc.php<br> | |||
если файла "config.inc.php", нет создаем его из исходного "config.inc.php.dist" | |||
находим параметр | |||
$rcmail_config['markasjunk2_learning_driver'] = null; | |||
и меняем значение на 'cmd_learn' | |||
$rcmail_config['markasjunk2_learning_driver'] = 'cmd_learn'; | |||
дальше находим параметр | |||
$rcmail_config['markasjunk2_spam_cmd'] = null; | |||
и меняем его на | |||
$rcmail_config['markasjunk2_spam_cmd'] = 'sa-learn --spam --no-sync --username=%u %f'; | |||
где %u - имя пользователя, %f - полный путь к письму.<br> | |||
Таким образом мы 'sa-learn' указываем письмо %f как СПАМ, а эти настройки просим применить для пользователя %u. | |||
аналогично исправляем параметр | |||
$rcmail_config['markasjunk2_ham_cmd'] = null; | |||
на | |||
$rcmail_config['markasjunk2_ham_cmd'] ='sa-learn --ham --no-sync --username=%u %f'; | |||
это обучит SpamAssassin пропускать нормальную почту. | |||
Последний этап, это смена кодировки:<br> | |||
открываем конфиг RoundCube | |||
roundcubemail/config/main.inc.php | |||
находим эту запись: | |||
// Use this charset as fallback for message decoding | |||
$rcmail_config['default_charset'] = 'ISO-8859-1'; | |||
и меняем кодировку на UTF-8 | |||
// Use this charset as fallback for message decoding | |||
$rcmail_config['default_charset'] = 'UTF-8'; | |||
=='''. Добавление плагина календарь в RoundCube'''== | |||
1. Скачиваем [https://plugins.roundcube.net/packages/kolab/calendar тут] | |||
2. Устанавливаем утилиту '''lessc''' | |||
apt-get install node-less | |||
3. Выполняем все по инструкции: | |||
... | |||
1. Get the source from git | |||
$ cd /tmp | |||
$ git clone https://git.kolab.org/diffusion/RPK/roundcubemail-plugins-kolab.git | |||
$ cd /<path-to-roundcube>/plugins | |||
$ cp -r /tmp/roundcubemail-plugins-kolab/plugins/calendar . | |||
$ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libcalendaring . | |||
$ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libkolab . | |||
2. Create calendar plugin configuration | |||
$ cd calendar/ | |||
$ cp config.inc.php.dist config.inc.php | |||
$ edit config.inc.php | |||
3. Initialize the calendar database tables | |||
$ cd ../../ | |||
$ bin/initdb.sh --dir=plugins/calendar/drivers/database/SQL | |||
4. Build css styles for the Elastic skin | |||
$ lessc --relative-urls -x plugins/libkolab/skins/elastic/libkolab.less > plugins/libkolab/skins/elastic/libkolab.min.css | |||
5. Enable the calendar plugin | |||
$ edit config/config.inc.php | |||
Add 'calendar' to the list of active plugins: | |||
$config['plugins'] = array( | |||
(...) | |||
'calendar', | |||
); | |||
* Внимание - календарь работает только в '''skin 'elastic'''' | |||
=='''. Roundcube поиск в письмах больше 2000'''== | |||
В php.ini: | |||
max_execution_time = 600 | |||
max_input_time = 600 | |||
В app.js: | |||
// environment defaults | |||
this.env = { | |||
'''request_timeout: 600, // seconds''' | |||
'''_request_timeout: 180, // seconds''' | |||
draft_autosave: 0, // seconds | |||
comm_path: './', | |||
recipients_separator: ',', | |||
recipients_delimiter: ', ', | |||
popup_width: 1150, | |||
popup_width_small: 900 | |||
}; | |||
В app.min.js дописать в сл. строке: | |||
... | |||
this.env={request_timeout:600,draft_autosave:0,comm_path:"./",recipients_separator:",",recipients_delimiter:", ",popup_width:1150,popup_width_small:900}; | |||
* [https://translated.turbopages.org/proxy_u/en-ru.ru.d28c420f-62972302-17600c4f-74722d776562/https/github.com/roundcube/roundcubemail/issues/4906 Взято тут...] | |||
==. '''Postgresql - addres book'''== | |||
* '''Ошибка: Database problem: 'roundcubemail.collected_addresses' doesn't exist in version 1.5.2''' | |||
Создание таблицы: | |||
* MySql: | |||
CREATE TABLE `collected_addresses` ( | |||
`address_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, | |||
`changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', | |||
`name` varchar(255) NOT NULL DEFAULT '', | |||
`email` varchar(255) NOT NULL, | |||
`user_id` int(10) UNSIGNED NOT NULL, | |||
`type` int(10) UNSIGNED NOT NULL, | |||
PRIMARY KEY(`address_id`), | |||
CONSTRAINT `user_id_fk_collected_addresses` FOREIGN KEY (`user_id`) | |||
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, | |||
UNIQUE INDEX `user_email_collected_addresses_index` (`user_id`, `type`, `email`) | |||
) ROW_FORMAT=DYNAMIC ENGINE=INNODB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; | |||
* Postgresql: | |||
CREATE TABLE collected_addresses ( | |||
address_id INT unique default '1' PRIMARY KEY, | |||
changed TIMESTAMP DEFAULT '1979-11-03 22:05:58' NOT NULL, | |||
name VARCHAR(255) DEFAULT '' NOT NULL, | |||
email VARCHAR(255) NOT NULL, | |||
user_id INT NOT NULL, | |||
type INT NOT NULL, | |||
CONSTRAINT user_id_fk_collected_addresses FOREIGN KEY (user_id) | |||
REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE | |||
); | |||
CREATE UNIQUE INDEX user_email_collected_addresses_index ON collected_addresses (user_id, type, | |||
email); | |||
* Postgresql права на таблицу: | |||
GRANT ALL PRIVILEGES ON collected_addresses TO roundcube; | |||
'''ИСТОЧНИКИ:''' | |||
<hr> | |||
* [https://github.com/roundcube/roundcubemail/issues/8409 Database problem: 'roundcubemail.collected_addresses' doesn't exist in version 1.5.2] | |||
* [https://stop-nelegal.ru/viewtopic.php?t=3885 Как обновить схему Roundcube Webmail "1.5.2 " в ручную.] |
Текущая версия от 10:53, 23 июня 2023
. Global Address Book for Roundcube
.Roundcube из коробки поддерживает LDAP..
Смотрите файл config/defaults.inc.php для примера (раздел ADDRESSBOOK SETTINGS)
- читать LDAP-Address-Books
Если же надо использовать SQL, то есть соответствующий плагин globaladdressbook
. Добавление плагина roundcube для антиспама
Всем доброго времени суток. Сегодня я расскажу Вам как поставить плагин на веб морду (riundcube) появится кнопка пометить как спам и наоборот вытащить из спама (т.е. снять метку СПАМ) Приятная особенность плагина состоит в том, что он позволяет через sa-learn обучать SpamAssassin
И так поехали
Скачиваем плагин, можно здесь
вытаскиваем из архива и помещаем его в плагины riundcube. Путь примерно такой /roundcubemail/plugins
Далее:
Редактируем конфиг main.inc.php
находим параметр
$rcmail_config['plugins'] = array(); и дополняем его $rcmail_config['plugins'] = array(markasjunk2);
если у вас уже стоят плагины, просто перечисляете их через запятую
Открываем конфиг плагина plugins/markasjunk2/config.inc.php
если файла "config.inc.php", нет создаем его из исходного "config.inc.php.dist"
находим параметр
$rcmail_config['markasjunk2_learning_driver'] = null;
и меняем значение на 'cmd_learn'
$rcmail_config['markasjunk2_learning_driver'] = 'cmd_learn';
дальше находим параметр
$rcmail_config['markasjunk2_spam_cmd'] = null;
и меняем его на
$rcmail_config['markasjunk2_spam_cmd'] = 'sa-learn --spam --no-sync --username=%u %f';
где %u - имя пользователя, %f - полный путь к письму.
Таким образом мы 'sa-learn' указываем письмо %f как СПАМ, а эти настройки просим применить для пользователя %u.
аналогично исправляем параметр
$rcmail_config['markasjunk2_ham_cmd'] = null;
на
$rcmail_config['markasjunk2_ham_cmd'] ='sa-learn --ham --no-sync --username=%u %f';
это обучит SpamAssassin пропускать нормальную почту.
Последний этап, это смена кодировки:
открываем конфиг RoundCube
roundcubemail/config/main.inc.php
находим эту запись:
// Use this charset as fallback for message decoding $rcmail_config['default_charset'] = 'ISO-8859-1';
и меняем кодировку на UTF-8
// Use this charset as fallback for message decoding $rcmail_config['default_charset'] = 'UTF-8';
. Добавление плагина календарь в RoundCube
1. Скачиваем тут 2. Устанавливаем утилиту lessc
apt-get install node-less
3. Выполняем все по инструкции:
... 1. Get the source from git $ cd /tmp $ git clone https://git.kolab.org/diffusion/RPK/roundcubemail-plugins-kolab.git $ cd /<path-to-roundcube>/plugins $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/calendar . $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libcalendaring . $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libkolab . 2. Create calendar plugin configuration $ cd calendar/ $ cp config.inc.php.dist config.inc.php $ edit config.inc.php 3. Initialize the calendar database tables $ cd ../../ $ bin/initdb.sh --dir=plugins/calendar/drivers/database/SQL 4. Build css styles for the Elastic skin $ lessc --relative-urls -x plugins/libkolab/skins/elastic/libkolab.less > plugins/libkolab/skins/elastic/libkolab.min.css 5. Enable the calendar plugin $ edit config/config.inc.php Add 'calendar' to the list of active plugins: $config['plugins'] = array( (...) 'calendar', );
- Внимание - календарь работает только в skin 'elastic'
. Roundcube поиск в письмах больше 2000
В php.ini:
max_execution_time = 600 max_input_time = 600
В app.js:
// environment defaults this.env = { request_timeout: 600, // seconds _request_timeout: 180, // seconds draft_autosave: 0, // seconds comm_path: './', recipients_separator: ',', recipients_delimiter: ', ', popup_width: 1150, popup_width_small: 900 };
В app.min.js дописать в сл. строке:
... this.env={request_timeout:600,draft_autosave:0,comm_path:"./",recipients_separator:",",recipients_delimiter:", ",popup_width:1150,popup_width_small:900};
. Postgresql - addres book
- Ошибка: Database problem: 'roundcubemail.collected_addresses' doesn't exist in version 1.5.2
Создание таблицы:
- MySql:
CREATE TABLE `collected_addresses` ( `address_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `changed` datetime NOT NULL DEFAULT '1000-01-01 00:00:00', `name` varchar(255) NOT NULL DEFAULT , `email` varchar(255) NOT NULL, `user_id` int(10) UNSIGNED NOT NULL, `type` int(10) UNSIGNED NOT NULL, PRIMARY KEY(`address_id`), CONSTRAINT `user_id_fk_collected_addresses` FOREIGN KEY (`user_id`) REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE, UNIQUE INDEX `user_email_collected_addresses_index` (`user_id`, `type`, `email`) ) ROW_FORMAT=DYNAMIC ENGINE=INNODB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- Postgresql:
CREATE TABLE collected_addresses ( address_id INT unique default '1' PRIMARY KEY, changed TIMESTAMP DEFAULT '1979-11-03 22:05:58' NOT NULL, name VARCHAR(255) DEFAULT NOT NULL, email VARCHAR(255) NOT NULL, user_id INT NOT NULL, type INT NOT NULL, CONSTRAINT user_id_fk_collected_addresses FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE ); CREATE UNIQUE INDEX user_email_collected_addresses_index ON collected_addresses (user_id, type, email);
- Postgresql права на таблицу:
GRANT ALL PRIVILEGES ON collected_addresses TO roundcube;
ИСТОЧНИКИ: