Содержание
Применение опций
Для того чтобы задать вышеописанные опции с индивидуальными параметрами, необходимо, прописать их в одном из нескольких специальных файлов. Сейчас мы вам расскажем и покажем то как это можно сделать и какими способами.
1. PHP.INI
Файл php.ini является основным файлом где хранятся настройки исполнения php скриптов. Пользовательский файл настроек обычно находится на несколько уровней выше папки www сайта. Иногда помещён в папку php-bin.
Применение: опция = значение
Пример настройки добавленной в файл php.ini:
post_max_size = 500Mupload_max_filesize = 400Mmax_execution_time = 3000max_input_time = 6000
2. .HTACCESS
Файл .htaccess (или htaccess.txt) является содержанием настроек поведения сервера и обработки файлов определённого сайта. Размещается в корне сайта.
Применение: php_value опция значение
php_value post_max_size 500Mphp_value upload_max_filesize 400Mphp_value max_execution_time 3000php_value max_input_time 6000
3. Любой PHP файл
Помимо вышеописанных способов, можно также сделать настройки к одному индивидуальному php-файлу.
Применение: ini_set(‘опция’, ‘значение’);
ini_set(‘post_max_size’, ‘500M’);ini_set(‘upload_max_filesize’, ‘400M’);ini_set(‘max_execution_time’, ‘3000’);ini_set(‘max_input_time’, ‘6000’);
* Необходимо учесть, что бывают хостеры, которые блокируют изменение некоторых опций.
На этом наша статья подходит к концу. Надеемся вы подчерпнули для себя полезную информацию из этого материала.
Опции
Опции, влияющие на загрузку файлов:
upload_max_filesize — Максимальный размер загружаемого файла
Измеряется в секундах. Дефолтное значение: «2M»
max_file_uploads — Максимальное количество одновременных загрузок
Измеряется в штуках. Дефолтное значение: «20»
post_max_size — Максимальный размер отправляемого через POST-запрос файла (Должен быть больше upload_max_filesize).
Измеряется в секундах. Дефолтное значение: «8M»
max_execution_time — Время в течении которого скрипт должен полностью завершить своё исполнение. Для отмены ограничений можно присвоить 0.
Измеряется в секундах. Дефолтное значение: «30»
max_input_time — Время в течении которого скрипт, должен получить и обработать все данные из POST и GET запросов.
Измеряется в секундах.
memory_limit — Ограничение на выделяемую для исполнения одного скрипта память. Для отмены ограничений, поставьте -1. Должен быть больше post_max_size.
Измеряется в Мегабайтах. Дефолтное значение: «128M»
Максимально допустимый размер данных, отправляемых методом POST
Методом пост могут отправляться как текстовые данные (например, при отправке комментария на сайт), так и файлы. Если вы увеличили значение upload_max_filesize чтобы иметь возможность загружать файлы большего размера на сайт, то также нужно увеличить и значение директивы:
post_max_size = 8M
которая устанавливает максимально допустимый размер данных, отправляемых методом POST. Это значение также влияет на загрузку файлов. Для загрузки больших файлов это значение должно быть больше значения директивы upload_max_filesize. В сущности, memory_limit должна быть больше чем post_max_size. Если используется integer, значение измеряется байтами. Вы также можете использовать сокращённую запись, которая описана выше. Если размер POST-данных больше чем post_max_size, суперглобальные переменные $_POST и $_FILES будут пустыми. Это можно отследить различными способами, например передав $_GET переменную в скрипт, обрабатывающий данные, т.е. <form action=»edit.php?processed=1″>, а затем проверить, установлена ли переменная $_GET.
Замечание: PHP разрешает сокращения значений байт, включая K (кило), M (мега) и G (гига). PHP автоматически преобразует все эти сокращения. Будьте осторожны с превышением диапазона 32-битных целых значений (если вы используете 32-битную версию), так как это приведёт к ошибке вашего скрипта.
Для полного снятия лимитов значение можно установить на .
Значение этой настройки игнорируется, если чтение данных POST отключено с помощью enable_post_data_reading.
Проверка использование ресурсов
Синтаксис:
getrusage ( )
Список параметров
who (если аргумент who равен 1, getrusage будет вызвана с RUSAGE_CHILDREN).
Возвращаемые значения: возвращает ассоциативный массив, содержащий данные возвращённые из системного вызова. Имена элементов соответствуют документированным именам полей.
Пример использования getrusage():
<?php $dat = getrusage(); echo 'Количество операций вывода блока: ' . $dat . '<br />'; echo 'Количество операций приема блока: ' . $dat . '<br />'; echo 'Количество отправленных сообщений IPC: ' . $dat . '<br />'; echo 'Количество принятых сообщений IPC: ' . $dat . '<br />'; echo 'Наибольший размер установленной резидентной памяти: ' . $dat . '<br />'; echo 'Суммарное значение размера разделяемой памяти: ' . $dat . '<br />'; echo 'Суммарное значение размера неразделяемых данных: ' . $dat . '<br />'; echo 'Количество исправленных страниц (легкая ошибка страницы): ' . $dat . '<br />'; echo 'Количество ошибочных страниц (тяжелая ошибка страницы): ' . $dat . '<br />'; echo 'Количество полученных сигналов: ' . $dat . '<br />'; echo 'Количество согласованных переключений контекста: ' . $dat . '<br />'; echo 'Количество несогласованных переключений контекста: ' . $dat . '<br />'; echo 'Количество свопов: ' . $dat . '<br />'; echo 'Время на задачи пользователя (user time) (микросекунды): ' . $dat . '<br />'; echo 'Время на задачи пользователя (user time) (секунды): ' . $dat . '<br />'; echo 'Время на системные задачи (system time) (микросекунды): ' . $dat . '<br />';
Пример вывода:
Способы исправления ошибки Fatal Error: Maximum Execution Time Exceeded
Вы можете исправить эту ошибку несколькими способами. Первые три способа подразумевают ручное редактирование файлов, которые влияют на настройки сервера, а четвертый – редактирование настроек сервера через Панель управления сервера.
ВАЖНО! Перед редактированием файлов на сервере, убедитесь, что вы создали резервную копию этих файлов. Способ №1
Редактирование файла .htaccess
Способ №1. Редактирование файла .htaccess
Подключитесь к своему сайту с помощью любого FTP-клиента (например, FileZilla, TotalCommander и др.).
Файл .htaccess находится в корне сайта, т.е., в той же папке, что и папки и .
Откройте этот файл и добавьте в него небольшую строку:
php_value max_execution_time 300
Этот код устанавливает для максимального времени выполнения значение в 300 секунд (5 минут). Если после этого вы все еще получаете ошибку, попробуйте увеличить значение до 600.
Способ №2. Редактирование файла wp-config.php
Добавьте в файл в корне сайта следующую строку (если в файле уже есть такая строка – просто измените старое значение):
set_time_limit(300);
Этот код также повышает значение для максимального времени выполнения скрипта до 300 секунд (5 минут).
Способ №3. Редактирование файла php.ini
Добавьте в файл , который находится в корне сайта, следующий код:
max_execution_time = 300
Данная настройка также влияет на максимальное время выполнения скрипта.
Способ №4. Изменение настроек через Панель администрирования сервера
Данный способ подойдет не всем, поскольку не на всех серверах есть возможность изменять настройки сервера с помощью Панели администрирования сервера.
Если вы используете cPanel, например, вы можете увеличить непосредственно через Панель управления сервером, не подключаясь к сайту по FTP.
- Для этого перейдите в раздел «Выбор PHP-версии» (Select PHP Version).
- Потом нажмите ссылку «Переключиться на опции PHP» (Switch To PHP Options).
- Увеличьте значение по умолчанию, которое вы видите в строке . Обычно по умолчанию установлено 30 секунд, поэтому увеличьте значение минимум до 300 секунд. После этого нажмите кнопку «Применить» (Apply), чтобы сохранить изменения.
Вот и все, вы успешно увеличили лимит для своего сайта на WordPress.
Краткий вывод
Из сегодняшней статьи вы узнали 4 способа увеличить для WordPress и исправить фатальную ошибку: Превышено максимальное время выполнения (Fatal Error: Maximum Execution Time Exceeded).
Если ни один из способов вам не помог, вы должны обратиться в службу поддержки своего хостинг-провайдера.
С этим читают
- Статический анализ php-кода на примере phpstan, phan и psalm
- Синтаксис php
- Глобальные переменные в wordpress
- Как увеличить лимит php памяти в wordpress
- Корневая папка сайта
- Работа с конструкциями if-else, switch-case в php
- Отправка e-mail в php
- Сравнение производительности версий php
- Загрузка файлов на сервер в php
- Настройка файла php.ini