Мне установили Roundcube на Ubuntu 14.04, с помощью NGINX, со статическим IP, SpamAssassin, ClamAV. Отправка/получение электронной почты была прекрасна включая загрузки, однако не может загрузить ничего для отправки.
Файл php.ini
memory_limit = 256M
max_execution_time = 60
;open_basedir =
log_errors = On
post_max_size = 100M
file_uploads = On
upload_tmp_dir = /tmp
upload_max_filesize = 100M
Полномочия папки
/tmp
srw-rw---- 1 nginx nginx
/roundcube/temp
drwxrwxrwx 2 nginx nginx 4096 Feb 20 00:41 temp
В nginx.conf, под http
директива, я установил
client_max_body_size 100m;
примечание: вывод ниже я удалил домен и имена каталогов.
FastCGI отправляется в stderr: "Сообщение PHP: Предупреждение PHP: ошибка загрузки Файла - не могущий создать временный файл в Неизвестном на строке 0 дюймов при чтении заголовка ответа из восходящего потока, клиента: сервер X.X.X.X: domain.com, запрос: "POST / почта/? _ task=mail& _ идентификатор = ~~~ from=compose& _ action=upload HTTP/1.1", в восходящем направлении: "fastcgi://unix:/tmp/php5-fpm.sock": хост: "domain.com", ссылающийся домен: "https://domain.com/mail/? _ task=mail& _ action=compose& _ идентификатор: ~~~~
Я установил почтовую/временную папку на 777 только, чтобы видеть, записала ли она файл там, и она сделала, но Roundcube все еще дал ошибку "Неудавшаяся Загрузка Файла". Обычно, тот каталог /mail/temp
установлен на 755 и записал бы 0kb файлы в противоположность 777, файл на самом деле будет записан, но ошибка в roundcube остается тем же так или иначе.
Я также играл вокруг с корнем (PHP, на который указывают)/tmp, полномочия каталога видеть 777, помог бы (все упомянутые файлы доступны nginx:nginx)... никакая радость, тот же вывод ошибок Roundcube: "Неудавшаяся Загрузка файла". Как последнее прибежище я указал на PHP на тот же/mail/temp, чтобы видеть, запишет ли он, он сделал, но все еще - та же roundcube ошибка "Неудавшаяся Загрузка Файла".
Как может, я решил эту проблему загрузки?
Только что была такая же проблема. В конце концов отследил его до пустого значения upload_tmp_dir в моей конфигурации php, поэтому попробуйте добавить что-то подобное в свою конфигурацию apache или отредактируйте php.ini:
php_admin_value upload_tmp_dir /var/tmp
Также добавлено filesystem_attachments
в мой $config ['плагины']
массив