Поиск по сайту

Температура за бортом

Войти в Гараж



PDF Печать E-mail
01.12.2016 19:41

Почтовый сервер: Увеличение размера вложения

Предпосылка: Почтовый сервер реализован на связке postfix+dovecot+roundcube. Вебинтерфейс roundcube во всплывающем окне "Добавить вложение" указывает: Максимальный размер файла 2 Мб. Соответственно файлы большего размера не прикрепляются.


Примечание: postfix определяет ограничения не вложения, а всего письма. В умолчательной конфигурации дефолтное ограничение размера письма было 10Мб. Следовательно Roundcube, выводя сообщение о максимальном размере в 2Мб, никоим образом не ориентируется на конфигурацию postfix. Будучи приложением, написанным на php, Roundcube ориентируется на конфигурацию сервера php. Однако необходимо помнить, что размер письма состоит не только из вложения, а так же из текста письма и служебного кода. Следовательно необходимо установить большее значение допустимого размера письма, чем величина допустимого размера вложения.


1. В конфигурационный файл /etc/postfix/main.cf, необходимо внести параметр, опретеляющий максимально-допустимый размер письма,так как в умолчательной конфигурации он отсутствует. Например, установить в качестве максимально-допустимого размера почтового сообщения 25 Мб.

[root@server postfix] # postconf -e message_size_limit=25600000

[root@server postfix] # postfix reload

При этом необходимо убедиться, что размер письма не превышает максимально-допустимого размера почтового ящика пользователя.

[root@server postfix] # postconf -d     - выводит умолчательные настройки сервера

..........

mailbox_size_limit = 51200000

message_size_limit = 25600000

virtual_mailbox_limit = 51200000

.....

Из листинга видно, что при максимальном размере ящика в 50Мб мы увеличили размер письма до 25Мб. Так ящик долго не протянет. В таком случае целесообразно увеличить и размер ящика например до 200Мб.

Опять таки при просмотре конфигурационного файла параметры  mailbox_size_limit и virtual_mailbox_limit мы не найдем, поэтому добавляем их:

[root@server postfix] # postconf -e mailbox_size_limit = 204800000

[root@server postfix] # postconf -e virtual_mailbox_limi = 204800000

[root@server postfix] # service postfix restart

Проверяем фактические значения:

[root@server postfix]# postconf -n mailbox_size_limit
mailbox_size_limit = 204800000
[root@server postfix]# postconf -n virtual_mailbox_limit
virtual_mailbox_limit = 204800000
[root@server postfix]# postconf -n message_size_limit
message_size_limit = 25600000
[root@server postfix]#

2. Все вышеперечисленные манипуляции бессмысленны пока мы не разрешим php работать с файлами такого размера.

Максимальный размер файла, который можно закачать с помощью php-скрипта определяется в файле /etc/php.ini


; Maximum size of POST data that PHP will accept.

post_max_size = 16M


; Maximum allowed size for uploaded files.

upload_max_filesize = 16M

; Maximum amount of memory a script may consume

memory_limit = 64M  


После редактирования php.ini необходимо зарестартить apache

[root@server postfix]#service httpd restart


3. Если сессия пользователя roundcube все это время была открыта, то необходимо переавторизоваться.


Готово.

Обновлено 01.12.2016 21:35
 
Rambler's Top100
 
www.garage.zabkray.net , Powered by HardWorm Chita 2010 - 2021