Почтовый сервер: Увеличение размера вложения Предпосылка: Почтовый сервер реализован на связке 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 все это время была открыта, то необходимо переавторизоваться.
Готово.
|