Где лежит php ini
Работа с файлами сайта, размещенного на хостинге или собственной виртуальной машине, рано или поздно приведет вас к файлу основных настроек языка PHP. Узнать, где лежит php ini, можно несколькими способами, которые зависят от операционной системы. Если вы уже используете хостинг на Windows или Linux, информация по поиску и использованию данного файла вам пригодится.
Расположение файла редко зависит от того, какой конструктор сайтов или оболочку вы используете. Вордпресс, Джумла и другие оболочки будут использовать стандартный php.ini, доступный в ОС сервера, либо тот, что поставляется вместе с инструментарием Denver.
Причины для поиска php.ini
Изменения в php.ini для сайта производятся тогда, когда нужно расширить или снять ограничения на некоторые операции – например, объем импортируемых или экспортируемых данных. Снятие ограничений полезно, когда вы переносите сайт вместе с его содержимым с одной платформы на другую, так как настройки по умолчанию могут этому помешать. Продвинутые пользователи могут настроить здесь все, что связано с исполнением команд на языке PHP.
Как найти данный файл
Первый шаг в поисках подойдет для случая, когда сайт уже запущен на виртуальной машине или хостинге (или вы как раз собираетесь это сделать). Создайте в корневой папке сайта файл с расширением PHP, куда скопируйте следующий простой код:
Выполнение этого кода при открытии файла-страницы на сайте даст весьма подробную информацию об используемой версии PHP для вашего сайта, а также другие важные параметры. Там же будет и расположение файла php.ini на хостинге, которое используется в данный момент.
Основное правило при использовании Apache, Denver и других оболочек для виртуального сервера: вы фактически работаете с тем же Linux’ом, поэтому пути находятся стандартными для этой системы (и для самого PHP) способами, и, скорее всего, содержат соответствующие названия в именах папок. Если советы, касающиеся конкретных CMS, не помогли, просто ищите файл стандартным способом через создание страницы с phpinfo().
Ищем файл настроек PHP в популярных CMS
Даже пользователю-новичку может быть нужно найти, где находится php ini в Wordpress или Joomla. Эти CMS дружелюбны к новым пользователям, но изменения параметров PHP все равно могут потребоваться по разным причинам. Файл обычно располагается в \usr\local\php5 относительно корневой папки, которую вам предоставляет хостинг, или папки, которая является рабочей для вашего внутреннего сервера. Метод с созданием проверочного файла, описанный выше, отлично работает в этом случае. Сами CMS обычно не вносят изменения в расположение php ini.
Будьте внимательны, когда заказываете хостинг веб сайтов – в некоторых случаях провайдер может ограничить или запретить изменение важных файлов, в том числе конфигурационных файлов PHP. Если возникают проблемы с поиском или открытием файла, есть смысл обратиться в техподдержку хостинга напрямую и уточнить, какие возможности вам доступны. В работе с собственным виртуальным сервером на Denver/Apache вас никто не ограничивает.
Если вы работаете в CMS Bitrix, вы можете и не найти файл настроек PHP в привычных директориях. Файл php ini в Bitrix лежит в разных папках в зависимости от версии самого Битрикса, поэтому создавайте тестовую страничку из первого примера и узнавайте точный путь оттуда. На некоторых хостингах вы можете найти путь /home/login, но туда обычно загружаются собственноручно созданные файлы, исходник для которых берется из /home/login/etc.
Расположение php.ini в ОС Linux разных версий и сборок

ОС Linux считается самой подходящей системой для регулярной работы с хостингом, сайтами на PHP и сопутствующими процессами. Если вы имеете непосредственный доступ к файловой системе сервера (являетесь его владельцем, например), то ищите php.ini по адресам /etc/, /usr/local/lib или /usr/local/php/etc/ – это самые распространенные места. PHP Zend размещает ини файл в /usr/local/Zend/etc/, учтите это, если используете данную оболочку. Вы можете задать и обычный поиск файла в системе, но так вы не узнаете, какой из нескольких файлов php.ini реально используется в данный момент для задания настроек сервера и сайта.
Вряд ли сложным исключением станет сборка ОС на базе Ubuntu. Место, где лежит php.ini в Ubuntu, определяется через phpinfo() и зависит от того, какой именно тип сервера вы используете. Для Apache это может быть /etc/php5/apache2, например. Если файл вовсе не удается обнаружить, то его можно создать вручную или скопировать из другого места, но только если знаете примерную структуру файла.
Как настроить php.ini под свои потребности?
Настройка важных и второстепенных параметров может быть весьма долгим процессом. Если у вас есть выделенный веб сервер, и вы хотите тонко настроить его работу, то рекомендуем обратиться к одному из онлайн руководств по параметрам в PHP.ini для продвинутых пользователей. Сам процесс задания параметров сводится к изменению числовых или текстовых значений для одной из строк-директив.
Вот некоторые из настроек, которые можно изменить, если владелец хостинга разрешает использовать php.ini и редактировать его самостоятельно:
Эти две строки важны для любого пользователя, желающего снять ограничение на объем загружаемых файлов. Эта настройка проверяется при импорте записей в Вордпресс и другие CMS того же типа, значения по умолчанию в целях безопасности сервера сделаны очень скромными. Если вы точно знаете, что делаете, можете значительно увеличить лимит, либо просто подогнать его под размер импортируемых файлов (если уже знаете их примерный объем).
Здесь задается максимальное время в секундах, которое отводится на выполнение каждого скрипта и загрузку данных в процессе его работы соответственно.
Эта важная директива задает максимальное выделение памяти под один отдельный скрипт. Не завышайте это значение, если не знаете, для чего это может понадобиться. Скрипты PHP достаточно легковесны с точки зрения обычного пользователя.
Решение ошибки «Нет. Вероятно, каталог, используемый для сохранения параметров сессии, не доступен для записи»
В новой записи я расскажу как я решил проблему с сохранением параметров сессии на Bitrix. Сайт располагался на VPS под Ubuntu (хостинг beget).
Авторизуемся на сервере и узнаём версию PHP через команду в консоли
Вам нужно авторизоваться под пользователем root. После авторизации в консоли пишем команду

Находим пути до файла с конфигурацией PHP на сервере (php.ini)
С помощью следующей команды, вы получите пути до файла php.ini. Данная команда выводит пути до всех файлов, вам нужны только файлы вашей версии PHP.

Создаём директорию для файлов сессий
Для файлов сессии я создал директории по следующему пути /home/user/tmp/sessions
Проверьте чтобы все директории по указанному пути были созданы!
user может быть заменён на имя вашего пользователя.
Изменяем конфигурацию в файле php.ini для сайта Bitrix
Прописываем в значение параметра для session.save_path=/home/user/tmp/sessions
И строкой нижу пропишем — extension=session.so
- Написание материала для курса по разработке ботов на Telegram
- Разработка универсального парсера на PHP
Поддержите мой сайт!
Каждый переведённый донат, мотивирует на создание новых записей и уроков на YouTube
Bitrix Virtual Machine
Bitrix VM — бесплатное ПО, созданное на основе CentOS , разработанное специально для CMS 1С-Битрикс .
На данный момент существует две версии Bitrix VM :
- 5.x — окружение настроено для работы со старыми версиями CMS, используется PHP 5.6 и MySQL 5.5.
- 7.х — актуальная ветка для последних версий CMS, используется PHP 7.1 и MySQL 5.7.
Стоит отметить, что установка панелей управления на Bitrix VM не предусмотрена.
Начальная настройка окружения
При подключении к серверу под пользователем root появляется список интерфейсов и меню управления.
- Для выхода из меню нужно нажать 0 .
- Для его повторного запуска выполнить скрипт:
Для начала работы с сервисами необходимо создать и настроить пул сервера.
- Выбираем пункт главного меню 1. Create Management pool of server и вводим название сервера (чтобы оставить по умолчанию нажимаем Enter )
После создания пула можно перейти к настройке одного или нескольких сайтов.
Добавление сайта
Чтобы сайт был доступен в браузере для установки CMS/восстановления, его необходимо добавить с помощью меню управления.
Для этого необходимо:
- В главном меню переходим к управлению сайтами:
- Далее выбираем пункт 1 :
- Вводим доменное имя сайта. Если домен сайта не разрешается в IP-адрес бокса, нужно предварительно добавить запись в /etc/hosts :
- Выбираем тип установки:
- kernel — отдельный сайт.
- ext_kernel — отдельный сайт с возможностью мультисайтовости.
- link — новый сайт в рамках мультисайтовости Bitrix (будет работать только при наличии сайта с типом ext_kernel ):
- Выбираем кодировку:
- Разрешаем новому сайту использовать планировщик, введя y :
- В следующем пункте вводим N, чтобы оставить имени БД, пользователя, пароля и корневого каталога сайта по умолчанию (путь — /home/bitrix/ext_www/domain.ru ), или y для ручного ввода:
Установка SSL-сертификата
Для установки SSL-сертификата необходимо:
- Объединяем файлы domain_ru.ca-bundle и domain_ru.crt в один файл, например, ssl-bundle.crt :
- Полученный файл ssl-bundle.crt и приватный ключ размещаем в директории /etc/nginx/ssl .
- Создаем конфигурационный файл для сайта, копируя стандартный:
- Вносим пути к сертификату и ключу в созданный файл domain_ssl.conf :
- В файле /etc/nginx/bx/site_avaliable/ssl.s1.conf указываем путь к сертификату:
- Проверяем конфигурацию Nginx на наличие ошибок и перезагружаем веб-сервер, чтобы применить изменения:
Инструкция по установке SSL-сертификата также доступна в официальной документации.
Автоматическая установка SSL-сертификата Let's Encrypt на Bitrix VM 7.2
Установка SSL-сертификата Let's Encrypt выполняется с помощью встроенного меню /root/menu.sh .
- В первом меню выбираем пункт:
- Переходим в управление сертификатами:
- Для установки Let's Encrypt выбираем соответствущий пункт:
- Вводим имя сайта (выбираем из таблицы выше):
- Далее вводим домен сайта, для которого нужно установить сертификат (значения указываются через запятую):
- Указываем адрес электронной почты администратора:
- Подтверждаем установку:
После этого все необходимые действия будут произведены автоматически. Через несколько минут можно проверять работу сайта по HTTPS.
Обновление Bitrix VM до версии 7.2 (и старше)
В последней версии виртуального окружения Bitrix VM 7.2 выпущена функция установки Let's Encrypt и другие важные изменения.
Для обновления Bitrix VM выполняем следующие действия:
- Скачиваем bitrix-env.sh с официального репозитория Битрикс:
- Добавляем скрипту права на исполнение:
- Запускаем обновление:
- Когда процесс завершен, заходим в меню окружения новой версии:
Подключение модулей PHP
Предустановленные модули
По умолчанию в Bitrix VM установлено большое количество различных модулей, но некоторые из них отключены за ненадобностью.
Файлы модулей хранятся в /etc/php.d с расширением .ini . Те, что с суффиксом .disabled — отключены.
Php ini где лежит bitrix
# memory: 65536MB
[mysqld]
query_cache_type = 1
query_cache_size = 128M
query_cache_limit = 16M
innodb_buffer_pool_size = 18432M
max_connections = 205
table_open_cache = 80392
thread_cache_size = 512
max_heap_table_size = 256M
tmp_table_size = 256M
key_buffer_size = 256M
join_buffer_size = 32M
sort_buffer_size = 32M
bulk_insert_buffer_size = 2M
myisam_sort_buffer_size = 32M