Описание PHP


Настройка версии PHP и ini-файла в cPanel

Хостинговая контрольная панель cPanel предлагает пользователям гибкую и удобную работу с языком программирования PHP. Поэтому в панели имеется удобный и простой интерфейс для управления той или иной версией PHP. Пользователям доступны разные версии PHP, список постепенно расширяется с обновлением функционала cPanel. Для того, чтобы узнать какая версия установлена на данный момент или чтобы сменить версию PHP следует зайти в cPanel и найти раздел «Программное обеспечение и службы» (англ. Software/Services) и выбрать «Выбрать PHP версию» (англ. Select PHP Version).

Затем можно увидеть информацию о текущей версии PHP. Также можно наблюдать большой перечень расширений, среди которых некоторые включены и отмечены галочкой.

Сменить версию PHP очень просто. Следует выбрать из списка интересующую версию и нажать «Сделать текущей».

Перед тем, как ознакомиться с таблицей команд и значений, уточним некоторые термины и определения.

PHP-сценарий (PHP-скрипт) – скрипт на языке PHP, представляет из себя набор команд и инструкций. Как правило, используется для создания веб-приложений и сайтов, однако на этом его область применения не ограничивается. В случае, использования в web, запрос от клиента поступает к программе-веб серверу, которая запускает выполнение соответствующего php-скрипта интерпретатором php, и результат выполнения (обычно это html-код) возвращает клиенту (браузеру).

Когда безопасный режим включён, PHP проверяет, совпадает ли owner/владелец текущего скрипта с владельцем файла, которым оперирует функция работы с файлами. И если владельцы не совпадают, доступ будет запрещен.

Опции php.ini

Как было сказано, cPanel предоставляет простой интерфейс для управлением PHP. Интерфейс разделен на 2 подменю:

1) Опции PHP

2) Расширения PHP.

Ниже можно увидеть таблицу опций PHP с названием команд и их значениями.

 

Команда Описание Значение
asp_tags Данная опция позволяет серверу содержать в коде PHP тэги <% и %> вместо стандартных тегов <?php и ?>. Если эта опция выключена, то PHP скрипт с ASP тэгами не будет работать корректно. ON/OFF
file_uploads Сервер разрешает сценариям PHP получать файлы через HTTP. ON/OFF
include_path Данная опция нужна для того, чтобы при отсутствии указания пути в самом php файле (php.ini), интерпретатор смог найти библиотеки, которые хранят файлы, требуемые сценарием для использования. Следует указать путь
max_execution_time Количество секунд работы PHP Сценария перед тем, как сценарий будет завершен. Этот лимит предотвращает сбои в работе сервера из-за «зависших сценариев», которым требуется время для выполнения.

К примеру, бесконечный цикл, вызванный ошибкой в скрипте.

Следует указать время в секундах
max_input_time Количество секунд, которое Сценарий PHP использует для обработки новой информации, такой как загрузки файла. Этот лимит предотвращает замедление работы сервера перегруженным сценарием. Следует указать время в секундах
memory_limit Максимальный объем памяти в Мб, доступный php-скрипту. Этот предел предотвращает размещение доступной памяти сервера сценариями с большим кодом. Когда значение равно -1, нет никакого предела памяти. Следует указать количество мегабайт
register_globals Используется для сценария PHP, требующего, чтобы это опция была включена. Внимание: может сделать сайт небезопасным.

Рекомендуется не включать эту опцию. Эта функция была критикована в версии PHP 5.3.0 и удалена в PHP 5.4.0.

ON/OFF
safe_mode Эта опция гарантирует, что пользователь, который включает Сценарий PHP имеет права выполнить все задачи, которые указаны в самом сценарии. Например, если сценарий разработан, чтобы изменять файлы, то пользователю нужны права на изменения файлов.

Эта функция была критикована в PHP 5.3.0 и удалена в PHP 5.4.0.

ON/OFF
session.save_path Когда посетитель получает доступ к веб-сайту, веб-сервер создаёт уникальный ID пользователя. Затем веб-сервер использует ID, чтобы хранить информацию о сеансе пользователя, или время, проведенное на веб-сайте. Директива Thesession.save_path описывает, где эта информация хранится. (PHP позволяет создавать определенный веб-контент для данного посетителя и сеанса.)

Опция session.save_path описывает путь, где будут сохраняться файлы сессий. Если в диапазоне значений функции есть число, то оно относится к числу каталогов, в которых веб-сервер будет хранить информацию. Если у сайта много трафика, для сервера проще сохранять и получать информацию, если веб-сервер распределяет данные сеанса среди нескольких папок. Диапазон значений также включает имя каталога, который содержит подкаталоги, в которых хранится информация о сеансе.

По умолчанию /tmp
upload_max_filesize Ограничение максимального размера файла, загружаемого на сервер. Указывается в мегабайтах. Следует указать количество мегабайт
allow_url_fopen Позволяет сценарию PHP получать данные от удаленных источников по FTP или HTTP. Эта опция - большая угроза безопасности, таким образом не рекомендуется включать ее без необходимости. ON/OFF
display_errors Если опция включена, ошибки и предупреждения будут включены в результат выполнения скрипта (будут включены в сгенерированый html, и отображены на странице сайта, если в скрипте не переопределена данная опция). ON/OFF
error_reporting Уровень ошибок в php, которые будут выводиться на сайте: предупреждения, ошибки, использование функций которые помечены устаревшими. Функция работает, когда включена опция display_errors

PHP обладает большой системой уровней ошибок. Уровень ошибки определяется согласно константе или с помощью битовой маски.

-E_ALL

E_ALL & -E_Notice E_ALL

log_errors Опция отвечает за создание записей в журнале ошибок. По умолчанию все ошибки регистрируются в журнал ошибок сервера. error_log использует директиву, чтобы определить путь к файлу журнала, то есть где хранится журнал с ошибками. ON/OFF
mail.force_extra_parameters Дополнительные параметры для почты: функция используется для отправки почты. Например, чтобы использовать пользовательские настройки отправки, следует редактировать файл: -C /dir/conf.cf

На виртуальном хостинге нет возможности изменять данные параметры.

No value
max_input_vars Максимальное количество входящих параметров в запросе. Следует указать количество символов
open_basedir Список директорий, которые PHP может использовать для своей работы. Если файл будет вне указанных директорий, то Сценарии PHP откажутся открывать его. Чтобы разделить директории, используется двоеточие.

Например: /dir/upload:/usr/tmp

no value
post_max_size Максимальный размер данных в байтах, которые могут быть отправлены методом POST. Как правило, должно быть больше, чем upload_max_filesize и меньшим, чем memory_limit. Используются ярлыки для значений байта: K (kilo), M (mega), и G (giga)

Например, 16M.

Следует указать количество символов в мегабайтах
safe_mode_exec_dir Сценарии могут запускать внешние программы, расположенные только в определенной директории.

Например: /dir/external

no value
safe_mode_include_dir Сценарий пытается получить доступ к некоторым файлам, то файлы из этой директории обойдут безопасность (UID/GID) проверки. no value
short_open_tag Позволяет использовать краткие теги для работы с PHP <? ?> вместо <?PHP ?> или <?=$url?> ON/OFF
suhosin.get.max_value_length Ограничение общей длины GET запроса Следует указать цифровое значение
suhosin.post.max_vars Максимальное количество переменных во входящем POST запросе
suhosin.request.max_varname_length Максимальное количество переменных символов в названии входящего запроса.
suhosin.request.max_vars Максимальное количество переменных во входящем запросе.

Связанные статьи

Настройка PHP

Если Вы превысили установленное ограничение, это говорит о том, что нужно повысить лимит в PHP....

Смена версии PHP

В этом руководстве рассмотрим, смену версию PHP в хостинговой панели управления cPanel. Для...

Установка разных версий PHP для сайтов на одном аккаунте

В этом руководстве рассмотрим, смену версию PHP для нескольких сайтов в хостинговой панели...

Проверка методов в HTTP

Метод это действие, которое клиент ждёт от сервера. Например, сервер отправит клиенту...

Как включить, отключить модули в PHP

На всех серверах с cPanel, установлен модуль который позволяет всем абонентам, самостоятельно и...