Инструменты пользователя

Инструменты сайта


web:nginx:upload

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
web:nginx:upload [1] – внешнее изменение 127.0.0.1web:nginx:upload [1] (текущий) novik
Строка 13: Строка 13:
 Учтите, что в PHP так же установлен максимальный размер POST запросов с помощью директивы post_max_size, который должен быть больше или равен максимальному размеру загружаемых файлов: Учтите, что в PHP так же установлен максимальный размер POST запросов с помощью директивы post_max_size, который должен быть больше или равен максимальному размеру загружаемых файлов:
  
-''post_max_size = 20M'' +''post_max_size = 20M''
  
 В зависимости от конфигурации сервера, новые значения могут вступить в силу сразу после внесения изменений, или же потребуется перезапустить веб-сервер или PHP интерпретатор. В зависимости от конфигурации сервера, новые значения могут вступить в силу сразу после внесения изменений, или же потребуется перезапустить веб-сервер или PHP интерпретатор.
  
 ===== Директивы PHP через .htaccess ===== ===== Директивы PHP через .htaccess =====
- 
  
 Если у вас нет доступа к файлу конфигурации PHP, вы можете попробовать установить значения с помощью файла .htaccess веб-сервера Apache. Если вы работаете с Apache, то в корневой директории с вашим сайтом WordPress наверняка уже есть файл .htaccess, в который вы можете добавить следующие значения: Если у вас нет доступа к файлу конфигурации PHP, вы можете попробовать установить значения с помощью файла .htaccess веб-сервера Apache. Если вы работаете с Apache, то в корневой директории с вашим сайтом WordPress наверняка уже есть файл .htaccess, в который вы можете добавить следующие значения:
  
-''php_value upload_max_filesize 20M +''php_value upload_max_filesize 20M php_value post_max_size 20M''
-php_value post_max_size 20M''+
  
 Изменения в файлы .htaccess как правило вступают в силу сразу после сохранения. Изменения в файлы .htaccess как правило вступают в силу сразу после сохранения.
  
 ===== Директивы PHP через nginx.conf ===== ===== Директивы PHP через nginx.conf =====
- 
  
 Для веб-сервера nginx к сожалению нет возможности использовать файл .htaccess, но если вы ищите возможность изменять значения php.ini с помощью конфигурационного файла nginx, это делается через директиву fastcgi_param (в случае если PHP настроен как FastCGI клиент): Для веб-сервера nginx к сожалению нет возможности использовать файл .htaccess, но если вы ищите возможность изменять значения php.ini с помощью конфигурационного файла nginx, это делается через директиву fastcgi_param (в случае если PHP настроен как FastCGI клиент):
  
-''fastcgi_param PHP_VALUE upload_max_filesize=20M; +''fastcgi_param PHP_VALUE upload_max_filesize=20M; fastcgi_param PHP_VALUE post_max_size=20M;''
-fastcgi_param PHP_VALUE post_max_size=20M;''+
  
 Кстати в nginx есть директива client_max_body_size, которая отвечает за максимальный размер данных передаваемых в HTTP запросах. Она тоже влияет на максимальный размер загружаемых файлов. Для вступления в силу изменений конфигурационного файла nginx, веб-сервер необходимо перезагрузить. Кстати в nginx есть директива client_max_body_size, которая отвечает за максимальный размер данных передаваемых в HTTP запросах. Она тоже влияет на максимальный размер загружаемых файлов. Для вступления в силу изменений конфигурационного файла nginx, веб-сервер необходимо перезагрузить.
Строка 41: Строка 37:
 Директивы upload_max_filesize и post_max_size можно так же изменить с помощью PHP функции ini_set() в файле wp-config.php или с помощью плагина, если это разрешено в настройке интерпретатора: Директивы upload_max_filesize и post_max_size можно так же изменить с помощью PHP функции ini_set() в файле wp-config.php или с помощью плагина, если это разрешено в настройке интерпретатора:
  
-''ini_set( 'upload_max_size' , '20M' ); +''ini_set( 'upload_max_size' , '20M' ); ini_set( 'post_max_size', '20M');''
-ini_set( 'post_max_size', '20M');'' +
 ===== Фильтр upload_size_limit ===== ===== Фильтр upload_size_limit =====
 +
 В WordPress есть специальный фильтр upload_size_limit используемый в функции wp_max_upload_size(). Этот фильтр отвечает за максимальный размер загружаемых файлов. Значение по умолчанию — наименьшее из upload_max_filesize и post_max_size из файла php.ini, и использовать данный фильтр, можно только в пределах этого значения. В WordPress есть специальный фильтр upload_size_limit используемый в функции wp_max_upload_size(). Этот фильтр отвечает за максимальный размер загружаемых файлов. Значение по умолчанию — наименьшее из upload_max_filesize и post_max_size из файла php.ini, и использовать данный фильтр, можно только в пределах этого значения.
  
Строка 51: Строка 46:
 Кстати, вы можете использовать этот фильтр для того, чтобы уменьшить максимальный размер загружаемых файлов в небольшом собственном плагине: Кстати, вы можете использовать этот фильтр для того, чтобы уменьшить максимальный размер загружаемых файлов в небольшом собственном плагине:
  
-''function my_upload_size_limit( $limit ) { +''function my_upload_size_limit( $limit ) { add_filter( 'upload_size_limit', 'my_upload_size_limit' ); return wp_convert_hr_to_bytes( '5M' ); }'' 
-add_filter( 'upload_size_limit', 'my_upload_size_limit' ); + 
-    return wp_convert_hr_to_bytes( '5M' ); +[[:web:nginx:phpfpmmax|Дополнение про PHP_VALUE в nginx и phpfpm]] 
-}''+ 
web/nginx/upload.txt · Последнее изменение: novik