Я пытаюсь загрузить файл размером 30 МБ на свой сервер, но он не работает.
Когда я загружаю файл размером 30 МБ, страница загружает « Страница не найдена »
Когда я загружаю файл размером 3 МБ, я получаю сообщение « 413 Request Entity Too Large » с nginx / 0.6.32
Я пытаюсь найти nginx, чтобы увеличить " client_max_body_size ", но не могу найти установленный на моем сервере nginx. Я даже пробовал запустить:
vi /etc/nginx/nginx.conf
или
vi /usr/local/nginx/conf/nginx.conf
чтобы проверить, существует ли файл конфигурации, но я не смог найти его на своем сервере.
Есть ли способ решить эту проблему? Или мне нужно установить nginx на свой сервер.
РЕДАКТИРОВАТЬ:
Я внес все необходимые изменения в свои файлы php.ini,
post_max_size 128M
upload_max_filesize 100M
memory_limit 256M
Спасибо, Раджу
ps aux | grep nginx
проверить, работает ли он?which nginx
? Это даст вам местоположение исполняемого файла, а не файла конфигурации, но должно, по крайней мере, подтвердить, установлен ли nginx или нет.Ответы:
Источник: http://www.cyberciti.biz/faq/linux-unix-bsd-nginx-413-request-entity-too-large/
Отредактируйте файл conf nginx:
Добавьте строку в раздел http:
http { client_max_body_size 100M; }
Не использовать МБ не получится, только М!
Также не забываем перезапустить nginx
источник
http { }
раздел, добавьте остальное внутри него! Добавление новогоhttp {}
раздела не удастся и выдаст"http" directive is duplicate
ошибку в журнале Nginx.-в php.ini (внутри /etc/php.ini)
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
-в nginx.conf (внутри / opt / nginx / conf)
client_max_body_size 24000M
Это работает в моем случае
источник
Сначала отредактируйте файл конфигурации Nginx (
nginx.conf
)Место расположения:
sudo nano /etc/nginx/nginx.conf
Добавьте следующие коды:
http { client_max_body_size 100M; }
Затем добавьте следующие строки в файл конфигурации PHP (
php.ini
)Место расположения:
sudo gedit /etc/php5/fpm/php.ini
Добавьте следующие коды:
memory_limit = 128M post_max_size = 20M upload_max_filesize = 10M
источник
nginx.conf
файл в соответствии с инструкциями, но он был пуст! Я не ожидал этого, но когда я добавил ваш код, он все еще работал ... как я думаю, можно было ожидать, но по какой-то причине я не ожидал, и я был очень счастлив, когда это произошло!Пожалуйста, введите файл nginx домена:
Добавить в файл этот код
client_max_body_size 24000M;
Если вы получили ошибку, используйте эту команду
источник
Я добавляю изменения прямо на свой виртуальный хост вместо глобальной конфигурации nginx, например:
server { client_max_body_size 100M; ... }
Затем я меняю параметры в php.ini, как в комментариях выше:
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
и что вы не можете забыть, так это перезапустить nginx и php-fpm, в centos 7 это так:
источник
Затем добавьте строку в раздел http
http { client_max_body_size 100M; }
не используйте только MB M.
затем для местоположения php
на сегодняшний день максимальное использование php 7.0 или выше
sudo nano /etc/php/7.2/fpm/php.ini //7.3,7.2 or 7.1 which php you use
проверьте те, которые увеличиваются по вашему желанию.
memory_limit = 128M post_max_size = 20M upload_max_filesize = 10M
перезапустить php-fpm
источник
Предполагая, что вы внесли необходимые изменения в свои файлы php.ini:
Вы можете решить проблему, добавив следующую строку в файл nginx.conf, находящийся по следующему пути:
затем отредактируйте файл с помощью текстового редактора vim следующим образом:
и добавьте client_max_body_size с достаточно большим значением, например:
client_max_body_size 20MB;
После этого не забудьте сохранить с помощью
:xi
или:wq
А затем перезапустите nginx.
Вот и все.
Сработал для меня, надеюсь, это поможет.
источник
Я получил загрузку, работающую с вышеуказанными изменениями. Но когда я внес изменения, я начал получать ответ 404 при загрузке файла, который побудил меня продолжить отладку и выяснил, что это проблема с разрешением, проверив nginx error.log
Решение:
Проверьте текущее владение пользователем и группой в / var / lib / nginx.
$ ls -ld /var/lib/nginx
drwx ------. 3 nginx nginx 17 октября 5, 19:31 / var / lib / nginx
Это говорит о том, что возможно несуществующий пользователь и группа с именем nginx владеют этой папкой. Это препятствует загрузке файлов.
В моем случае имя пользователя, указанное в "/etc/nginx/nginx.conf", было
Измените владельца папки на пользователя, определенного в nginx.conf, в этом случае vagrant.
$ sudo chown -Rf vagrant:vagrant /var/lib/nginx
Убедитесь, что он действительно изменился.
$ ls -ld /var/lib/nginx drwx------. 3 vagrant vagrant 17 Oct 5 19:31 /var/lib/nginx
Перезагрузите nginx и php-fpm для большей безопасности.
Ошибка отказа в разрешении теперь должна исчезнуть. Проверьте error.log (на основе местоположения error_log в nginx.conf).
$ sudo nano /path/to/nginx/error.log
источник
Открыть файл
/etc/nginx/nginx.conf
Добавить или изменитьclient_max_body_size 0;
источник
Использование:
команду или добавить:
чтобы получить расположение файла конфигурации.
Обновите эти переменные в соответствии с вашими потребностями и сервером
max_input_time = 24000 max_execution_time = 24000 upload_max_filesize = 12000M post_max_size = 24000M memory_limit = 12000M
В Linux вам нужно будет перезапустить службу nginx / apache и phpfpm, чтобы были загружены новые настройки ini. На xampp, ammps вы можете перезапустить их с панели управления, которая поставляется с такими приложениями.
источник