Редактируем файл php ini

Редактируем файл php ini

When using PHP as an Apache module, you can also change the configuration settings using directives in Apache configuration files (e.g. httpd.conf ) and .htaccess files. You will need «AllowOverride Options» or «AllowOverride All» privileges to do so.

There are several Apache directives that allow you to change the PHP configuration from within the Apache configuration files. For a listing of which directives are PHP_INI_ALL , PHP_INI_PERDIR , or PHP_INI_SYSTEM , have a look at the List of php.ini directives appendix.

Sets the value of the specified directive. Can be used only with PHP_INI_ALL and PHP_INI_PERDIR type directives. To clear a previously set value use none as the value.

Note: Don’t use php_value to set boolean values. php_flag (see below) should be used instead.

Used to set a boolean configuration directive. Can be used only with PHP_INI_ALL and PHP_INI_PERDIR type directives.

php_admin_value name value

Sets the value of the specified directive. This can not be used in .htaccess files. Any directive type set with php_admin_value can not be overridden by .htaccess or ini_set() . To clear a previously set value use none as the value.

php_admin_flag name on|off

Used to set a boolean configuration directive. This can not be used in .htaccess files. Any directive type set with php_admin_flag can not be overridden by .htaccess or ini_set() .

Example #1 Apache configuration example

 php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on 

PHP constants do not exist outside of PHP. For example, in httpd.conf you can not use PHP constants such as E_ALL or E_NOTICE to set the error_reporting directive as they will have no meaning and will evaluate to 0. Use the associated bitmask values instead. These constants can be used in php.ini

Читайте также:  Html post form text link

Changing PHP configuration via the Windows registry

When running PHP on Windows, the configuration values can be modified on a per-directory basis using the Windows registry. The configuration values are stored in the registry key HKLM\SOFTWARE\PHP\Per Directory Values , in the sub-keys corresponding to the path names. For example, configuration values for the directory c:\inetpub\wwwroot would be stored in the key HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot . The settings for the directory would be active for any script running from this directory or any subdirectory of it. The values under the key should have the name of the PHP configuration directive and the string value. PHP constants in the values are not parsed. However, only configuration values changeable in PHP_INI_USER can be set this way, PHP_INI_PERDIR values can not, because these configuration values are re-read for each request.

Other interfaces to PHP

Regardless of how you run PHP, you can change certain values at runtime of your scripts through ini_set() . See the documentation on the ini_set() page for more information.

If you are interested in a complete list of configuration settings on your system with their current values, you can execute the phpinfo() function, and review the resulting page. You can also access the values of individual configuration directives at runtime using ini_get() or get_cfg_var() .

Источник

Изменение настроек PHP

Каждый владелец сайта рано или поздно сталкивается с необходимостью изменения настроек PHP. Например, нужно изменить кодировку сайта, максимальный размер загружаемых файлов, время выполнения скрипта или объем доступной памяти. Для изменения таких параметров нужно прописать новые или изменить имеющиеся параметры в специальных файлах .htaccess, php.ini или самом скрипте. Рассмотрим самые распространенные параметры, полный список изменяемых опций доступен в официальной документации https://www.php.net/manual/ru/ini.list.php

default_charset

С помощью этого параметра можно задать кодировку сайта. Наиболее распространенные значения utf-8 (обычно используется по умолчанию) и cp1251 (чаще всего используется устаревшими сайтами).

Читайте также:  Html code for letters

display_errors

Параметр предназначен для настройки вывода ошибок. При значении on включает вывод ошибок, off соответственно выключает.

upload_max_filesize

Задает максимальный размер загружаемого файла. Обычно данный параметр задают вместе с post_max_size и memory_limit, так как если указанные директивы будут иметь значения ниже upload_max_filesize, то ошибка при загрузке файлов сохранится.

post_max_size

Определяет максимально допустимый размер данных, передаваемых в POST запросе. Этот параметр должен быть выше или равен значению upload_max_filesize.

memory_limit

Задает лимит оперативной памяти для скрипта. Мы не рекомендуем устанавливать высокие значения этого параметра для всего сайта, так как можно пропустить бесконтрольный рост использования оперативной памяти и ошибки в работе сайта.

При получении ошибки «out of memory» рекомендуем первостепенно выполнить оптимизацию скрипта с целью снижения использования памяти и только при невозможности этого, расширить объем доступной памяти для отдельного скрипта с помощью функции ini_set.

max_execution_time

Позволяет настроить максимальное время выполнения скрипта. Если какой-то скрипт не успевает выполняться за установленный срок, пользователь увидит ошибку «maximum execution time of 60 seconds exceeded».

Не рекомендуем устанавливать высокие значения этого параметра для всего сайта, так как это может привести к скоплению долгих запросов и полному зависанию сайта. При необходимости долгого выполнения отдельных запросов, оптимизируйте код сайта с целью увеличения скорости его выполнения, либо расширяйте лимит с помощью ini_set для отдельных запросов.

max_input_vars

Директива задает максимальное число входных переменных в одном запросе.

mbstring.func_overload

Директива предназначена для замены однобайтовых функций двухбайтовыми (например strlen на mb_strlen), без внесения изменений в код. Чаще всего используется в устаревших версиях Битрикс.

Стоит отметить, что с PHP 7.2 параметр объявлен устаревшим, в 8.0 был полностью удален.

mbstring.internal_encoding

Обычно, этот параметр используется совместно с mbstring.func_overload для установки кодировки двухбайтовых функций. Это устаревшая возможность, вместо этого разработчики рекомендуют использовать default_charset.

Изменение параметров PHP через файл .htaccess

Файл .htaccess

Это основной способ изменения параметров PHP для нашего хостинга. Для изменения нужных параметров используйте php_value в файле .htaccess (рекомендуем вносить изменения в файл, который размещен в корневом каталоге сайта). Этим способом можно менять значения директив с пометками PHP_INI_ALL и PHP_INI_PERDIR.

php_value default_charset utf-8 php_value display_errors 1 php_value post_max_size 512M php_value upload_max_filesize 512M php_value memory_limit 512M php_value max_execution_time 600 php_value max_input_vars 10000

Указанные изменения распространяются на все подкаталоги, в которых расположен файл .htaccess. Получение 500 ошибки при входе на сайт, означает допущенную ошибку при редактировании файла.

Читайте также:  Python split into integers

Изменение параметров PHP через скрипты

Скрипт config.php

Этот способ подходит для любого хостинга. Изменение параметров PHP происходит с помощью функции ini_set в скриптах. Таким способом можно поменять директивы с пометками PHP_INI_USER и PHP_INI_ALL из официальной документации.

ini_set('default_charset', 'utf-8'); ini_set('display_errors', '1'); ini_set('post_max_size', '512M'); ini_set('upload_max_filesize', '512M'); ini_set('memory_limit', '512M'); ini_set('max_execution_time', '600'); ini_set('max_input_vars', '10000');

Вариант изменения параметров PHP через скрипты очень удобен, так как можно расширять ресурсы оперативной памяти, времени выполнения, объем загружаемых файлов для отдельных сложных запросов, а для всего сайта будут использоваться стандартные параметры.

Изменение параметров PHP через php.ini

Файл php.ini

Вариант изменения параметров PHP посредством файла php.ini преимущественно применим для владельцев собственных серверов. Через php.ini можно изменить абсолютно любой параметр PHP (в том числе mbstring для Битрикс).

default_charset = utf-8 display_errors = 1 post_max_size = 512M upload_max_filesize = 512M memory_limit = 512M max_execution_time = 600 max_input_vars = 10000

Источник

Изменение параметров PHP — директив php.ini

В разделе Параметры модуля PHP панели управления хостингом размещена таблица с изменяемыми параметрами. Установите необходимые значения в соответствии с требованиями скриптов сайта и сохраните изменения.

Ручное редактирование php.ini

Для редактирования файла php.ini необходимо:

  • загрузить на ваш компьютер файл php.ini, соответствующий вашей версии PHP, из директории /etc/php/version, например, с помощью файлового менеджера панели управления ;
  • загрузить отредактированную версию файла php.ini в домашнюю директорию /home/идентификатор;
  • перейти в раздел Управление веб-серверомпанели управления хостингом и выполнить перезапуск сервера, чтобы изменения вступили в силу.

При использовании собственного php.ini настройки PHP из панели управления хостингом работать не будут. Чтобы вернуться к автоматическим настройкам, нужно удалить php.ini из директории/home/идентификатор/ и перезапустить веб-сервер.

Для отдельных сайтов параметры PHP можно задать с помощью файла .htaccess и директив php_flag, php_value в соответствии с документацией PHP.

Туториал: как работать с языком программирования PHP

Источник

Оцените статью