Настройка опций в файле php ini timeweb

Обновлено: 07.07.2024

Файл конфигурации хорошо прокомментирован и подробно проработан. Параметры чувствительны к регистру, значения ключевых слов – нет; пробелы и строки, начинающиеся с точки с запятой, игнорируются. Логические значения могут быть представлены как 1/0 , Yes/No , On/Off или True/False . Значения по умолчанию в php.ini повлияют на установку PHP , которую позже можно будет настроить.

В этой статье мы рассмотрим важные настройки в файле php.ini , которые могут потребоваться для PHP парсера.

short_open_tag = Off

Короткие открытые теги выглядят так: <? ?>. Для этого параметра должно быть установлено значение Off , если вы хотите использовать функции обработки XML .

safe_mode = Off

Если этот параметр имеет значение ON , вероятно, вы скомпилировали PHP с флагом enable-safe-mode . Безопасный режим наиболее важен для использования CGI .

safe_mode_exec_dir = [DIR]

safe_mode_allowed_env_vars = [PHP_]

Эта опция php ini задает, какие переменные окружения пользователи могут изменить в безопасном режиме. По умолчанию, только те переменные, к которым добавлено « PHP_ ». Если эта директива пуста, то большинство переменных можно изменять.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

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

max_execution_time = 30

При настройке php ini нужно знать, что функция set_time_limit() не будет работать в безопасном режиме. Поэтому это основной способ реализовать задержку выполнения скрипта в безопасном режиме. В Windows вы должны выполнить принудительное завершение, основываясь на максимальном уровне потребляемой памяти, а не на времени. Также можно использовать настройку таймаута Apache для реализации задержки. Но она будет применена и к файлам сайта, не являющимся PHP .

error_reporting = E_ALL &

Значением по умолчанию является E_ALL &

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

warn_plus_overloading = Off

Этот параметр выдает предупреждение, если оператор « + » используется со строками, как при формировании значения поля формы.

variables_order = EGPCS

Заменяет gpc_order . Обе версии устарели вместе с register_globals . Он устанавливает порядок различных переменных: Environment , GET , POST , COOKIE и SERVER ( или Built-in ). Вы можете изменить этот порядок. Переменные будут последовательно перезаписаны слева направо, при этом самый правый всегда « выигрывает ». Это означает, что если оставить значение по умолчанию и использовать одно имя для переменной среды, переменной POST и переменной COOKIE , то, в конце концов, имя будет принадлежать переменной COOKIE .

register_globals = Off

Этот параметр php ini set позволяет определить, нужно ли регистрировать переменные EGPCS как глобальные. В настоящее время этот способ устарел, и, начиная с PHP 4.2 , этот флаг по умолчанию установлен в значение Off . Вместо него используйте суперглобальные массивы.

gpc_order = GPC

Этот параметр устарел.

magic_quotes_gpc = On

Экранирует кавычки во входящих данных GET/POST/COOKIE . Если вы используете много форм, которые отправляют данные сами себе или другим формам, и отображают значения форм, нужно активировать эту директиву или использовать функции addslashes() для данных строкового типа.

magic_quotes_runtime = Off

Этот параметр экранирует кавычки во входящих строках базы данных и текстовых строках. Помните, что SQL добавляет слеш в одинарные кавычки и апострофы при сохранении строк и не убирает их при возвращении строк. Если этот параметр выключен, необходимо использовать функцию stripslashes() при выводе любых типов строковых данных из БД SQL . Если для magic_quotes_sybase установлено значение On , то этот параметр должен быть Off .

magic_quotes_sybase = Off

Экранирует одиночные кавычки во входящих строках базы данных и текстовых строках с одиночными кавычками в стиле Sybase , а не обратным слешем. Если для параметра magic_quotes_runtime установлено значение On , данный параметр должен быть отключен.

auto-prepend-file = [path/to/file]

Если в этом параметре php ini указан путь, PHP должен автоматически добавить конструкцию include() в начало каждого PHP-файла . Следует учитывать ограничения для путей включаемых файлов.

auto-append-file = [path/to/file]

Если в этом параметре указан путь, PHP должен автоматически ввести конструкцию include() в конец каждого PHP-файла , кроме случаев, когда осуществляется выход с помощью функции exit () . Следует учитывать ограничения для путей включаемых файлов.

include_path = [DIR]

Если установить это значение, вам будет разрешено включать или запрашивать файлы только из указанных каталогов. Каталог include обычно находится под корневым документом. Это необходимо, если вы работаете в безопасном режиме. Установите для параметра значение .in , чтобы включить файлы из каталога, в котором находится ваш скрипт. Несколько каталогов разделяются двоеточиями: .:/usr/local/apache/htdocs:/usr/local/lib .

doc_root = [DIR]

file_uploads = [on/off]

Активируйте этот флаг, если загружаете файлы с помощью PHP-скрипта .

upload_tmp_dir = [DIR]

session.save-handler = files

За исключением редких случаев изменять этот параметр не нужно.

ignore_user_abort = [On/Off]

Определяет, что произойдет, если посетитель сайта нажмет в своем браузере кнопку « Остановить ». По умолчанию установлено значение On , которое означает, что скрипт продолжит работать до завершения или таймаута. Если изменить значение данного параметра на Off , скрипт будет прерван. Этот параметр работает только в режиме модуля, а не в CGI .

mysql.default_host = hostname

Хост-сервер по умолчанию, используемый при подключении к серверу базы данных, если не указан другой узел.

mysql.default_user = username

Этот параметр php ini задает имя пользователя по умолчанию, используемое при подключении к серверу базы данных, если другое имя не указано.

mysql.default_password = password

Пароль по умолчанию, используемый при подключении к серверу базы данных, если не указан другой пароль.

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

Пожалуйста, опубликуйте ваши мнения по текущей теме материала. За комментарии, лайки, дизлайки, подписки, отклики огромное вам спасибо!

Хочу рассказать, как настроить php на хостинге. В целом процесс настройки представляет собой корректировку данных в системном файле php.ini.

Основные понятия

После ручного редактирования любого php-файла важно не забыть оставить его название неизменным, иначе интерпретатор не сможет его найти!

Данная информация сугубо обобщённая, на практике должно быть понятнее.

Выбираем один из вариантов

Вариант №1 для тех, кто использует в качестве административной панели сРаnel.

Ищите в меню раздел «Конфигурация», в котором опубликованы параметры РНР для хостинга.

Здесь даже можно изменить версию РНР. Есть провайдеры, которые дают практически неограниченные возможности пользователям для самостоятельной наладки, но есть и такие, которые очень строго контролируют любые изменения, и без их ведома нельзя действовать.

Кстати на блоге я уже писал, на что обращать внимание при выборе хостинга.

Пошаговая инструкция или переопределяем рhр.ini на свой лад

Находим оригинальный файл настроек .htaccess и прописываем в него следующие данные:

AddHandler php5-fastcgi.php Action php5-fastcgi /cgi-bin/php5.fcgi

Cохраняем новый документ с названием php5.fcgi и перемещаем его в папку /cgi-bin/:

exec /usr/bin/php -c /home/support/php.ini

Даем новому php-файлу права 755, чтобы настройки обрабатывались с учетом его данных:

Ну вот и все, пользуемся.

К данной пошаговой инструкции имеются некоторые уточнения. При создании файла php5.fcgi следует применять текущие настройки unix (разрыв строки), то есть прописывать в файле информацию с тегом /n. И в случае возникновения ошибки 500 следует проверить файл php-error.log, в котором скорее всего и найдете проблему.

Важными являются еще пара настроек:

Примечание! Список таких функций пользователь указывает самостоятельно через запятую;

Ну и напоследок добавлю: для того чтобы посмотреть настройки и узнать версию PHP, нужно создать php-файл (название не имеет значения), в котором следует прописать следующий код:

Далее скопируйте его в корневую папку веб-сайта. Все! Запускаем файл, и смотрим на результат.

Вот и все, дерзайте! Не забудьте рассказать друзьям в соц. сетях о новом, прочтенном вами материале, и подписаться на рассылку уведомлений о редакции следующей статьи. До встречи!

C уважением! Абдуллин Руслан

Понравился блог? Подпишись, чтобы получать новые статьи на почту и быть в курсе всех событий!

Timeweb help

  • В первом случае PHP функционирует как модуль веб-сервера Apache, поэтому настройки PHP необходимо указывать в файле .htaccess.
  • Во втором случае настройки PHP необходимо указывать в файле php.ini, который располагается в директории cgi-bin вашего сайта.

По умолчанию на новых серверах PHP работает в режиме mod_php, но при желании вы можете подключить режим mod_cgi, воспользовавшись нашей инструкцией.

Настройка опций в файле .htaccess

apc.cache_by_default

Управление APC осуществляется директивами:

php_flag apc.cache_by_default on php_flag apc.cache_by_default off

default_charset

AddDefaultCharset cp1251 php_value default_charset cp1251

display_errors

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

Включение и выключение осуществляются следующим образом:

php_value display_errors 0 php_value display_errors 1

log_errors

Опция позволяет включить логирование ошибок php с их записью в произвольный файл (в примере errors.log). При указании пути к файлу замените u и user на первую букву вашего логина и сам логин.

php_value log_errors on php_value error_log /home/u/user/путь_к_файлу/errors.log

magic_quotes_gpc

Включение и выключение magic_quotes осуществляется директивами:

php_flag magic_quotes_gpc on php_flag magic_quotes_gpc off

Опция позволяет включить логирование отправки почты из скриптов сайта. Логи будут содержать полный путь до скрипта, адрес получателя и заголовки. При указании пути к файлу, в который будут записываться логи (mail.log), замените u и user на первую букву вашего логина и сам логин.

php_value mail.add_x_er 1 php_value mail.log /home/u/user/public_html/mail.log

max_input_vars

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

php_value max_input_vars 11000

mbstring.func_overload и mbstring.internal_encoding

Для корректной работы сайтов на старых версиях CMS Битрикс (до v20.100.0) требуются следующие параметры:

php_value mbstring.func_overload 2 php_value mbstring.internal_encoding UTF-8

opcache.revali_freq

Отключение OpCache (настройка требуется для CMS Битрикс):

php_value opcache.revali_freq 0

pcre.recursion_limit

Устанавливает лимит на рекурсию.

php_value pcre.recursion_limit 14000

post_max_size

php_value post_max_size 40M

register_globals

Директивы для включения/выключения глобальных переменных:

php_flag register_globals on php_flag register_globals off

request_order

Директива регулирует порядок, в котором PHP добавляет переменные GET, POST и Cookie в массив _REQUEST.

php_value request_order GPC

upload_max_filesize

Устанавливает максимальный размер закачиваемого файла.

php_value upload_max_filesize 30M

Настройка опций в файле php.ini

allow_url_fopen

Включение опции (для отключения значение = 0):

apc.cache_by_default

Отключение APC (для включения значение = 1):

default_charset

Указание кодировки по умолчанию:

display_errors

Включение вывода ошибок (для выключения значение = off).

magic_quotes_gpc

Отключение Magic Quotes (для включения значение = 1):

Включение логирования отправки почты из скриптов сайта. В директиве mail.log указывается путь к файлу, в который будут сохраняться логи (замените u и user на первую букву вашего логина и сам логин).

mail.add_x_er = on mail.log = /home/u/user/public_html/mail.log

max_input_vars

Изменение количества вводимых переменных:

mbstring.func_overload и mbstring.internal_encoding

Настройки для старых версий CMS Битрикс:

mbstring.internal_encoding = UTF-8 mbstring.func_overload = 2

opcache.revali_freq

Отключение OpCache (настройка для CMS Битрикс):

pcre.recursion_limit

Лимит на рекурсию:

post_max_size

register_globals

Отключение Register Globals (для включения значение = 1):

request_order

Регулирует порядок, в котором PHP добавляет переменные GET, POST и Cookie в массив _REQUEST.

upload_max_filesize

Устанавливает максимальный размер закачиваемого файла.

Опции, которые не могут быть изменены

К настройкам PHP, изменение которых невозможно в рамках виртуального хостинга, относятся:

Просмотр параметров php

Для того, чтобы просмотреть значения параметров php, установленных для конкретного сайта, создайте в его директории файл .php со следующим содержимым:

Как настроить PHP на своем хостинге

Сам процесс настройки РНР на хостинге происходит за счет корректировки данных в главном системном файле php.ini. Здесь содержится информация обо всех директивах, определяющих не только реакцию РНР, но и реакцию сайта в целом. Имя файла должно быть таким, чтобы интерпретатор мог с легкостью его найти. В первую очередь системой ищется конфигурационный файл php.ini в действующем каталоге, если его в нем не удается обнаружить, то поиск начинается в самой директории, путь к которой указан в окружении PHPRC. Последним вариантом для проверки выступает путь, заданный при сборке РНР.

Структуру файла можно поделить на 2 составляющие:

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

3. Некоторые серверы разрешают устанавливать собственные настройки пользователя.

В большинстве случаев настройки РНР на хостинге устанавливаются по умолчанию. Но иногда появляются ситуации, при которых некоторые системы требуют расширить пороги конфигурации.

В таких случаях, если необходимо вручную изменить параметры настроек файла php.ini, поступают следующим образом.

В .htaccess необходимо добавить две строки:

AddHandler php5-fastcgi .php

Action php5-fastcgi /cgi-bin/php5.fcgi

После чего необходимо в папке /cgi-bin/php5.fcgi создать файл

exec /usr/bin/php -c /home/support/php.ini

Далее наделяем правами 755 файл php5.fcgi

chmod 755 php5.fcgi

С этого момента любой процесс обработки данных и их настроек будет происходить с обязательным учетом файла php.ini.

Здесь есть 2 важных момента:

Очень важными являются еще 2 настройки:

Как узнать параметры настроек РНР на хостинге? Для этого необходимо создать файл .php, в который необходимо занести следующие командные строки:

Данный файл создается на локальном компьютере, далее делается его копия для FTP хостинга в корневой каталог сайта. После этого можно запускать файл.

Как выбрать лучшую CMS для своего сайта?

Настройка PHP на хостинге через файл php.ini

В общем, кое-как 3 или даже 4 дня я помучался, после чего меня направлили на нужную страницу справки, где я нашел всю необходимую информацию. Как оказалось, я мог указывать для хостинга свои настройки PHP через файл php.ini, что, в принципе, было немного непривычно.

Вернемся к реальным примерам. При работе с разными хостерами можно сказать у меня было несколько вариантов и нюансов настройки PHP.

1. Если в качестве админки используется cPanel, то там находим раздел «Конфигурация PHP», где опубликован перечень параметров PHP для хостинга. Иногда там можно поменять версию PHP, если сервер позволяет работать с 4 и 5 версиями.

Возможно, cPanel и предоставляет варианты изменения настроек PHP (кроме версии), но мне пока такое не попадалось. Поэтому чаще всего я прибегал ко второму варианту.

На одном из хостеров, с которым работаю, нашел инструкцию как же все-таки можно переопределить некоторые настройки php.ini под свои нужды:

В .htaccess добавляем следующие строки:

AddHandler php5-fastcgi .php Action php5-fastcgi /cgi-bin/php5.fcgi

Далее создаем файл в папке /cgi-bin/php5.fcgi

Здесь /home/support/php.ini путь к вашему php.ini (конечно сам файл php.ini нужно будет там создать, убедитесь в правильности пути). После этого назначаем файлу php5.fcgi права 755 (chmod 755 php5.fcgi). Теперь обработка настроек PHP будет производится с учетом вашего файла php.ini.

К этой инструкции есть 2 уточнения. При создании файла php5.fcgi нужно использовать unix переводы строк т.е. n. И если возникает 500 ошибка, проверьте лог файл ошибок, где скорее всего найдете в чем проблема.

У меня лично работает! Внимание, пусть /home/accname/php/php.ini подставляете свой.

Ну и напоследок 2 настройки php.ini ради которых и пришлось «заморачиваться по полной»:

Ну, и чтобы пост получится полноценным на 100% рассказываю как узнать настройки PHP. Для этого создаете на локальном компьютере файл .php, где пишете код:

P.S. Постовой. Оптимизация, раскрутка и продвижение сайта в поисковых системах Google, Yandex.

Если вам нужна качественная разработка сайта, то можете обратиться в LTD-студию.

Как сменить версию PHP на хостинге

Как установить PHP на хостинг

Поддержка PHP присутствует на всех тарифных планах Hosting Linux и Hosting Windows, кроме тарифов Host-Lite и Win-Lite. Если у вас один из этих тарифов, повысьте тарифный план, чтобы включить поддержку PHP.

Как узнать версию PHP на хостинге

Создайте в папке файл .php со следующим содержимым:

Где находятся настройки версий PHP в ISPmanager

Если на вашей услуге хостинга установлена панель управления ISPmanager, вы можете хранить настройки PHP отдельно для каждого домена, даже если эти домены используют одну и ту же версию PHP. Либо вы можете использовать общую версию PHP и её настройки для всех доменов. Когда вы добавляете домен в панели управления ISPmanager, по умолчанию включается опция php.ini для домена. Если эта опция включена, настройки PHP будут храниться для каждого нового домена отдельно по пути /var/www/php-bin/имя-домена/php.ini.

Обратите внимание! Если внешний вид вашей панели управления отличается от представленного в инструкции, в левом нижнем углу кликните «Старый интерфейс».

Чтобы настройки общей версии PHP действовали сразу для всех доменов, при добавлении домена в панель ISPmanager НЕ отмечайте галочку php.ini для домена. Настройки будут храниться по пути /var/www/php-bin-php(номер-версии-PHP)/php.ini.

Как сменить версию PHP

В этом разделе описано, как сменить версию PHP для хостинга. Если у вас заказан сервер VPS, вам поможет инструкция Как сменить версию PHP на VPS? Ознакомиться со списком доступных модулей для каждой версии PHP можно на странице MySQL хостинг.

Чтобы сменить версию PHP, следуйте инструкции для вашей хостинг-панели:

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

Обратите внимание! Если внешний вид вашей панели управления отличается от представленного в инструкции, в левом нижнем углу кликните «Старый интерфейс».

Перейдите в раздел «WWW-домены». Дважды кликните по домену, для которого хотите сменить версию PHP. В поле Версия PHP (CGI) выберите нужную версию PHP и нажмите Ok:

Обратите внимание! В cPanel можно выбрать для каждого домена свою версию PHP, а также индивидуальный файл php.ini для каждой версии PHP. Версия PHP поддомена не будет зависеть от версии PHP родительского домена.

В разделе «Программное обеспечение» нажмите Выбор PHP версии. Выберите домен, для которого хотите сменить версию PHP, и нажмите Изменить. Затем выберите нужную версию PHP и подтвердите изменения:

  • В Plesk можно выбрать для каждого домена свою версию PHP, а также индивидуальный файл php.ini для каждой версии PHP. Версия PHP поддомена не будет зависеть от версии PHP родительского домена.
  • Если внешний вид вашей панели управления отличается от представленного в инструкции, перейдите в раздел «Сайты и домены» и в правом верхнем углу измените вид на «Активный».

В разделе «Сайты и домены» выберите домен, для которого хотите сменить версию PHP, и нажмите Настройки PHP. В выпадающем списке выберите нужную версию PHP и нажмите Применить:

Готово! Вы сменили версию PHP для домена.

Как выбрать версию PHP при работе в командной строке (SSH)

При работе в консоли используйте следующие пути до обработчиков PHP для запуска скриптов под различными версиями:

ionCube PHP Loader: как установить на хостинг

  • 5.3-bx-optimized,
  • 5.4-bx-optimized,
  • 5.5-bx-optimized,
  • 5.6-bx-optimized,
  • 7.0-bx-optimized,
  • 7.1-bx-optimized,
  • 7.2-bx-optimized,
  • 7.3-bx-optimized.

Что делать, если не обрабатываются PHP-скрипты

Перечислим основные причины этой ошибки.

На тарифах хостинга Host-Lite и Win-Lite не предусмотрена поддержка PHP. Узнать тариф хостинга можно на странице услуг в Личном кабинете. Для решения проблемы повысьте тарифный план хостинга.

Не обрабатывается PHP в HTML

Если не обрабатывается PHP в файлах с расширением .html, воспользуйтесь инструкцией Как включить обработку PHP в HTML.

Отключена поддержка PHP в ISPmanager

Если на вашей услуге хостинга установлена панель управления ISPmanager, убедитесь, что поддержка PHP включена.

Обратите внимание! Если внешний вид вашей панели управления отличается от представленного в инструкции, в левом нижнем углу кликните «Старый интерфейс».

Как включить поддержку PHP в ISPmanager:

Перейдите в раздел WWW-домены и два раза кликните по имени вашего домена:

Школа хостинга Редактор: Марина Долгова 117940 5 мин Аудио

Где находится php.ini?

Местонахождение файла php.ini зависит от операционной системы, на которой работает сервер хостинг-провайдера. Чтобы узнать где он находится выполняем 4 простых шага:

    Создаем php-файл (имя может быть любое, но мы берем для примера myphpinfo.php), и добавляем в него следующие строки:

Путь к файлу php.ini

Как настроить php.ini?

Файл php.ini имеет такие правила синтаксиса "директива = значение". Если вы хотите добавлять комментарии (например, в которых указываете на что влияет данная настройка), то делайте после точки с запятой (все, что идет после этого знака не учитывается как команда). Вот пример:

max_execution_time = 40 ; Максимальное кол-во секунд исполнения скрипта

Далее рассматриваем основные настройки, которые можно сделать в файле php.ini:

Общие настройки

PHPengine = On ; Работа PHP-скриптов включена.

short_open_tag = On ; Разрешает упрощенно обрамлять PHP-код тагами <?. Если будет значение Off, то PHP-код обрамлять в традиционные <?php.

asp_tags = On ; Включает возможность выделять PHP-код, как это делается в ASP - <% %>

Precision = 12 ; Указывает сколько цифр будет после запятой, у чисел с плавающей точкой.

output_buffering = 4096 ; Автоматически будет включена буферизация вывода, с размером буфера указанным после "равно".

safe_mode = On ; Безопасный режим.

safe_mode_allowed_env_vars = PHP_ ; Разрешает пользователю работать только с переменными окружения, которые начинаются с PHP_. Если эта директива будет пустой (не будет иметь значения), то пользователи смогут изменять любые переменные окружения. Это может очень плохо сказаться на защите сценариев.

safe_mode_protected_env_vars = LD_LIBRARY_PATH ; Запрещает изменять переменные, которые перечисляются через запятую.

disable_functions = ; После знака "равно" нужно через запятую записать функции, которые вы хотите отключить (обычно это делается для безопасности)

disable_classes = ; После знака "равно" нужно через запятую записать классы, вызов которых вы хотите запретить (обычно это делается для безопасности)

Ограничение ресурсов

max_execution_time = 40 ; Максимальное время на выполнение скрипта (в секундах)

max_input_time = 40 ; Максимальное время в секундах, которое дается скрипту может на обработку данных, которые загружаются.

memory_limit = 16M ; Максимум памяти, которые выделяется для работы одного скрипта

Обработка ошибок и журналы

error_reporting = E_ALL | E_ERROR | E_WARNING | E_PARSE | E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_COMPILE_WARNING | E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE ; Указывает перечень ошибок, которые можно выводить.

display_errors = On; Разрешает выводить ошибки прямо в браузер (часто используют для удобства отладки).

display_startup_errors = On ; Ошибки появляющиеся при страрте PHP разрешено показывать.

log_errors = On ; Ошибки разрешено записывать в файл журнала.

log_errors_max_len = 1024 ; Максимальное число символов, которое может составлять длинна журнала.

error_log = filename ; Задается имя журнала ошибок.

Обработка данных

variables_order = "EGPCS" ; Устанавливает порядок, в котором PHP будет регистрировать перменные (E - встроенные переменные, G - GET переменные, P - POST переменные, C - Cookies, S - сессии). Если убрать любую из букв, то работа соответствующих переменных будет блокироваться.

register_globals = On ; Включает возможность для обращения к переменным, которые поступают через GET/POST/Cookie/сессии, как к обычным переменным (например "$имяпеременной").

register_argc_argv = On ; Разрешено создавать переменные $argv и $argc на основе информации из GET-метода.

post_max_size = 8M ; Устанавливает максимальный объём данных, который может быть принят.

magic_quotes_gpc = On ; Включает автоматическую обработку кавычек, которые поступают через POST/GET/Cookie.

auto_prepend_file = ; Содержимое файлов, указанных в этих директивах, PHP должен обрабатывать соответственно ДО выполнения сценария
auto_append_file = ; Содержимое файлов, указанных в этих директивах, PHP должен обрабатывать соответственно ПОСЛЕ выполнения сценария.

default_mimetype = "text/html" ; Задает кодировку для Content-type. По умолчанию будет использовано text/html без указания кодировки

doc_root = ; Задается корневая папка для PHP-сценариев.

extension_dir = "./" ; Задается папка, в которой будут хранится динамически загружаемые расширения.

Загрузка файлов

file_uploads = On ; Загрузка файлов на сервер разрешена.

upload_tmp_dir = ; Временная директория для файлов, которые загружаются.

upload_max_filesize = 2M ; Устанавливает максимальный размер файла, который можно загрузить.

Работа с сокетами

user_agent="PHP" ; Задается переменная USER_AGENT, когда происходит подключение через сокет.

default_socket_timeout = 30 ; Максимальное время на прослушивание сокета (секунды).

Сессии

session.save_handler = files ; Уазывает, что информацию о сессиях нужно хранить в файлах

session.save_path = /tmp ; После знака "равно" нужно указать путь к папке в которой будет храниться информация о сессиях (важно чтобы она папка уже существовала)

session.name = PHPSESSID ; Указывает на исользование в качестве имени сессии и сессионной cookie - ID сессии

session.auto_start = 0 ; Запрещает инициализировать сессии при начале соединения

session.cookie_lifetime = 0 ; Время жизни сессии ("0" - значит, что сессия живет, пока окно браузера не будет закрыто)

Динамические расширения

extension=modulename.extension ; Можно использовать чтобы загружать внешние модули. Для Windows-систем, обычно пишут - extension=msql.dll, а для
UNIX - extension=msql.so

Работа с модулями MySQL

mysql.allow_persistent = On ; Разрешает устойчивые MySQL-соединения.

mysql.max_persistent = -1 ; Задает сколько максимум может быть устойчивых MySQL-соединений. Если указать -1, то это будет значить, что ограничений нет.

mysql.max_links = -1 ; Задает сколько максимум может быть устойчивых MySQL-соединений, и неустойчивых ODBC-соединений. Если указать -1, то это будет значить, что ограничений нет.

mysql.default_port = ; Порт для функции mysql_connect.

mysql.default_socket = ; Имя сокета для локальных соединений MySQL.

mysql.default_host = ; Имя хоста для функции mysql_connect.

mysql.default_user = ; Имя пользователя.

Если вы создали собственный файл php.ini и поместили его в папке сайта

В таком случае, в целях безопасности нужно заблокировать доступ к нему для всех, кроме вас. Для этого необходимо в файле .htaccess прописать такой код:

Но будьте внимательны, т.к. при данных настройках, все директивы (php_value, php_flag и т.д.) касающиеся настроек php через файл .htaccess перестанут работать (будет выдаваться ошибка 500 Internal Server Error).

Важно! Если вы создаете собственный файл php.ini, то он будет действовать только на директорию в которой он находится.

Марина Долгова

Облачный хостинг

Обзоры и рейтинг лучших регистраторов доменных имен

Провайдеры с бесплатным тестовым периодом

Задайте его экспертам! Ответ приходит очень быстро и прямо на ваш email.







От панели управления зависит ваше удобство в настройке хостинге\сайта.

Большинство качественных хостингов из нашего ТОПа используют удобные панели управления, поэтому рекомендуем больше внимания уделить другим параметрам при выборе.

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

Виртуальный хостинг - подходит для большинства проектов начального уровня с посещаемостью до 1000 человек в сутки. В таком хостинге мощность сервера делится между несколькими хостинговыми аккаунтами. Услуга проста в настройке даже для новичков.

VPS - подходит для более сложных проектов с достаточно большой нагрузкой и посещаемостью до 10000 человек в сутки. Здесь мощность сервера фиксированная для каждого виртуального сервера, при этом сложность настройки увеличивается.

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

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

  • Облачный хостинг
  • Виртуальный хостинг
  • VPS/VDS
  • Выделенный сервер
  • Размещение сервера
  • CDN

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

Виртуализация - это создание виртуальной среды на физическом сервере, позволяющая запускать требуемые ПО без затрагивания процессов, совершаемых другими пользователями сервера. С её помощью ресурсы физического сервера распределяются между виртуальными (VPS/VDS). Основные виды: аппаратная (KVM), паравиртуализация, виртулизация на уровне ОС (OpenVZ).

Абузоустойчивый хостинг - компании, которые разрешают размещать практически любой контент, даже запрещенный (спам, варез, дорвеи, порнографические материалы). Такие компании не удаляют контент вашего веб-сайта при первой же жалобе (“абузе”).

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

Безопасный хостинг - тот, где администрация постоянно обновляет ПО установленное на серверах, устанавливает базовую защиту от DDoS-атак, антивирус и файерволлы, блокирует взломанные сайты и помогает их "лечить".

Защита от DDOS - компании, которые предоставляют хостинг с защитой от DDoS-атак. Такие пакеты ощутимо дороже обычных, но они стоят своих денег, так как ваш сайт будет защищен от всех видов сетевых атак.

  • Абузоустойчивый хостинг
  • Безлимитный хостинг
  • Безопасный хостинг
  • Черный список
  • Защита от DDOS
  • Конструктор сайтов
  • Партнерские программы
  • Реселлинг хостинга

Тестовый период - предоставляется хостером бесплатно на 7-30 дней, чтобы вы могли удостовериться в его качестве.

Moneyback - период на протяжении которого хостер обязуется вернуть деньги, если вам не понравится хостинг.

Настоятельно рекомендуем не покупать слишком дешевый хостинг! Как правило с ним очень много проблем: сервер иногда не работает, оборудование старое, поддержка долго отвечает или не может решить проблему, сайт хостера глючит, ошибки в регистрации, оплате и т.д.

Также мы собрали тарифы от тысяч хостеров, чтобы вы могли выбрать хостинг по конкретной цене.

  • Дешёвый хостинг
  • Дешевый VPS-хостинг
  • Цена-Качество
  • Дорогой хостинг
  • Бесплатный хостинг
  • VPS/VDS посуточно

На языке программирования PHP и базах данных MySQL сейчас работает большинство сайтов. Они же поддерживаются практически всеми современными хостингами.

ОС - операционная система, установленная на сервере хостинга. Мы рекомендуем размещать на серверах с Linux, если нет особых требований у разработчиков сайта.

В статье мы рассмотрим основные директивы, которые могут пригодиться, чтобы настроить php.ini.

php.ini — это конфигурационный файл PHP. Синтаксис настроек этого файла прост:

Параметры чувствительны к регистру. Строки, которые начинаются с точки с запятой (;), игнорируются.

Обратите внимание! Чтобы избежать ошибок, не добавляйте новые строки. Ищите уже существующие и изменяйте значения на нужные.

Директивы для настройки использования ресурсов

Чтобы сервер не перегружался и мог нормально работать, в PHP устанавливаются ограничения для использующихся ресурсов. Иногда стандартные параметры не подходят для проекта и нужно сделать изменение php.ini.

Время выполнения скрипта. По умолчанию максимальное время выполнения скрипта ― 30 секунд. Чтобы установить другое, введите:

Где 60 ― количество секунд выполнения скрипта.

Если указать 0, скрипт будет выполняться бесконечно.

Максимальное время (в секундах), которое может потратить скрипт для обработки загружаемых данных. Для этого используйте директиву:

Объём памяти для одного скрипта (в МБ). Чтобы установить максимальный размер памяти, который может использовать один скрипт, введите:

Где 128 ― максимальный объём памяти в MБ.

Максимальный объём памяти, который может использовать один скрипт во время своего выполнения. Чтобы настроить, введите:

Где 128 ― объём памяти в МБ.

Максимальное количество переменных в GET и POST. Для этого введите директиву:

Где 1000 ― количество переменных.

Максимальный размер данных, который передаётся в POST-запросе. По умолчанию выставлен параметр ― 8 МБ. Чтобы его изменить, введите:

Где 9 ― максимальное количество МБ.

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

Где /var/www/ ― ограничивающая папка.

Директивы для вывода ошибок

В PHP есть разные виды ошибок: критические, ошибки синтаксиса и другие. Можно включить вывод только важных для вас типов ошибок. Для этого введите:

Где E_ALL ― вид ошибки, например E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING, E_USER_ERROR , E_USER_WARNING, E_USER_NOTICE.

Чтобы объединить несколько типов ошибок, используйте символ &. Например:

Чтобы включить запись PHP-ошибок в лог, введите:

Если есть повторяющиеся ошибки в рамках одного исполнения, их можно игнорировать. Для этого введите:

Директивы для загрузки файлов

Часто нужно дать возможность пользователю загружать свои файлы на сервер (фото, документы, музыку). Чтобы включить эту функцию нужна настройка php.ini. Введите:

Если вы, наоборот, хотите запретить загрузку файлов, введите:

Если нужно установить максимальный размер загружаемого файла (в МБ), введите:

Если нужно установить максимальное количество файлов, которое может загрузить один скрипт, введите:

Директивы для обработки данных

Чтобы установить порядок регистрации переменных, введите:

Где GEPSC ― нужная вам последовательность.

  • GET ― G,
  • POST ― P,
  • Cookie ― C,
  • Environment ― E
  • Server ― S.

Чтобы разрешить или запретить создание переменных argv и argc на основе информации, полученной методом GET, введите:

Чтобы включить или отключить автоматическую обработку кавычек и апострофов в GET, POST и Cookie, введите:

Читайте также: