php.ini file location.
What is the php.ini file, why we use it ? Where do I find this file on Ubuntu ? How I open and edit the php.ini file on a terminal. This is the most common questions asked by beginners who are either new to PHP or Linux.
В этом уроке мы обсудим php.ini — основной файл конфигурации в PHP. С точки зрения начинающего, мы обсудим, для чего он предназначен, где его найти, и пару важных настроек конфигурации, которые он предоставляет.
Imagine you are given a server and you are asked to change its PHP settings. Also, assume that several different versions of PHP are installed on this server. What do you think is the best way to find a PHP configuration file? You will find the answer to this question below.
In this tutorial, we’re going to discuss php.ini—the main configuration file in PHP. From the beginner’s perspective, we’ll discuss what it’s meant for, where to locate it, and a couple of important configuration settings it provides.
- Method 3 (locate command) #
- Method 2 (PHP. ini & grep command) #
- Method 1 (phpinfo file)
- Причины для поиска php. ini
- Что такое php. ini ?
- How to Fix the upload_max_filesize Error
- Как найти данный файл
- Important Settings in php. ini
- Error Handling Directives
- display_errors
- error_reporting
- error_log
- File Upload Directives
- file_uploads
- upload_max_filesize
- post_max_size
- Security Directives
- allow_url_fopen
- allow_url_include
- Session Directives
- session.name
- session.auto_start
- session.cookie_lifetime
- Miscellaneous Directives
- memory_limit
- max_execution_time
- max_input_time
- PHP Script to Find php. ini Location
- Где находится php. ini?
- Лучшие PHP-скрипты на CodeCanyon
- Важные настройки в php. ini
- Директивы по обработке ошибок
- display_errors
- error_reporting
- error_log
- Директивы для загрузки файлов
- file_uploads
- upload_max_filesize
- post_max_size
- Директивы по безопасности
- allow_url_fopen
- allow_url_include
- session.name
- session.auto_start
- session.cookie_lifetime
- memory_limit
- max_execution_time
- max_input_time
- Where Is php. ini?
- The Best PHP Scripts on CodeCanyon
- Locate the php. ini File With cPanel
- How to Locate the php. ini File in WordPress
- Настройка файла php. ini
- Вывод ошибок в php
- Ограничения ресурсов
- Директории по умолчанию
- Загрузка файлов
- Настройка расширений
- Php. ini File
- How to open & edit the php. ini configuration file on a Terminal
- What Is php. ini?
- Php. ini File Location in Ubuntu
- Popular PHP Articles
- Conclusion
- Расположение php. ini в ОС Linux разных версий и сборок
- What Is the php. ini File?
- Ищем файл настроек PHP в популярных CMS
- Как настроить php. ini под свои потребности?
- Conclusion
- Useful WordPress Troubleshooting Resources
- Выводы
- Conclusion
- Вывод
Method 3 (locate command) #
$ locate php.ini
You should see a list of php.ini files here.
How install PHP extension (like Zip) on Cantos / Ubuntu / Linux
Method 2 (PHP. ini & grep command) #
In Linux, run this command to locate the PHP.ini configuration file.
$ php -i | grep "Loaded Configuration File"
Or better way:
$ php -i | grep ini
Or in Windows Command Line:
$ php -i | findstr /c:"Loaded Configuration File"
The result should be something like this.
$ Loaded Configuration File => /etc/php/7.4/cli/php.ini
Method 1 (phpinfo file)
One way to find out exactly which php.ini file your web sever is using is by creating a new PHP file in document root called info.php
<?php phpinfo(); ?>
Load this file in your browser, press CTRL + F and search for “Loaded Configuration File”. You should see something like.

This will tell you the exact location of the php.ini file you want to edit.
Причины для поиска php. ini
Изменения в php.ini для сайта производятся тогда, когда нужно расширить или снять ограничения на некоторые операции – например, объем импортируемых или экспортируемых данных. Снятие ограничений полезно, когда вы переносите сайт вместе с его содержимым с одной платформы на другую, так как настройки по умолчанию могут этому помешать. Продвинутые пользователи могут настроить здесь все, что связано с исполнением команд на языке PHP.
In this quick article, we’ll discuss the different options that you can use to locate the php.ini file in WordPress. It’s good to know where it is, since you’ll sometimes need to modify some settings in that file.
For example, you may have seen this error in your WordPress site:
“uploaded file exceeds the upload_max_filesize”
This tells you that the file you are trying to upload in WordPress exceeds the configured file size in the php.ini configuration file. So you might need to increase this maximum size in the php.ini file.
Having said that, if you know the location of the php.ini configuration file, it also allows you to configure a lot of other options related to PHP.
Работа с файлами сайта, размещенного на хостинге или собственной виртуальной машине, рано или поздно приведет вас к файлу основных настроек языка PHP. Узнать, где лежит php ini, можно несколькими способами, которые зависят от операционной системы. Если вы уже используете хостинг на Windows или Linux, информация по поиску и использованию данного файла вам пригодится.
Расположение файла редко зависит от того, какой конструктор сайтов или оболочку вы используете. Вордпресс, Джумла и другие оболочки будут использовать стандартный php.ini, доступный в ОС сервера, либо тот, что поставляется вместе с инструментарием Denver.
Что такое php. ini ?
Если вы новичок в PHP или опытный разработчик, я уверен, что вы слышали о php.ini : самом важном файле конфигурации PHP.
Когда PHP запускается, он ищет файл php.ini в некоторых определенных местах и загружает его. Этот файл позволяет вам настроить несколько важных параметров, о которых вы должны знать. Довольно часто вы обнаружите, что вам нужно настроить параметры в файле php.ini .
С другой стороны, вполне возможно, что вам никогда не понадобилось изменять php.ini . PHP может успешно работать с настройками, предоставленными в файле php.ini по умолчанию, поскольку PHP поставляется с этими рекомендуемыми настройками по умолчанию. На самом деле, нет критических параметров конфигурации, которые вы должны установить для запуска PHP.
Однако файл php.ini содержит несколько важных настроек, с которыми вы хотите ознакомиться. На самом деле, как разработчик PHP, это неизбежно, и вы столкнетесь с этим раньше, чем позже.
PHP — это один из самых популярных языков программирования для создания сайтов и веб-приложений. На нем разработано множество готовых систем управления контентом для блогов, сайтов фирм или даже интернет-магазинов. Несмотря на то что у этого языка есть свои недостатки, он достаточно прост в освоении и поэтому очень часто используется для разработки новых сайтов.
Интерпретатор php может поставляться в виде модуля для Apache, выполнять скрипты из командной строки или в виде отдельного сервиса php-fpm. Эти сервисы отличаются своими возможностями, и предназначением, но для любого вида интерпретатора нужно задать базовые настройки, например, рабочая папка, включенные расширения, отображение ошибок и так далее. Все эти настройки задаются через файл php.ini. В этой инструкции мы рассмотрим как выполняется настройка файла php.ini в операционных системах Linux, хотя все информация подойдет и для Windows.
Если у вас еще не установлен интерпретатор языка программирования php, то вы можете ознакомиться со статьей установка lamp в Ubuntu 16.04.
Для каждой версии интерпретатора конфигурационный файл php.ini находится в отдельной папке. Но все конфигурационные файлы находятся в папке /etc/php, например, /etc/php5:

Папка conf.d содержит общие настройки для различных расширений и модулей, они не будут нас сейчас интересовать. Более интересны следующие три папки — apache, cli и fpm. В них содержатся конфигурационные файлы php.ini для каждого из этих интерпретаторов.
Если вы собираетесь использовать несколько из этих интерпретаторов, то вам придется указывать настройки для каждого из них отдельно. Вы можете убедиться, что в каждой из папок лежит файл php.ini.
Что касается синтаксиса файла, то он разделен на секции, сначала идет секция настройки php, которая разделена на подсекции в зависимости от типа настроек, дальше идут секции настройки разных модулей. Синтаксис самих настроек очень прост, он соответствует привычному синтаксису ini файлов. Строка начинается с имени настройки, затем следует знак равно, а за ним значение:
How to Fix the upload_max_filesize Error
If you’re editing the existing php.ini file, you just need to change the values as per your requirements. On the other hand, if you’ve created a new file, you’ll need to add it.
With these changes in place, you should not get the file size error anymore, as we’ve increased the file size limit significantly. Of course, you could adjust the above settings as per your requirements.
And with that, we’ve reached the end of this article.
Как найти данный файл
Первый шаг в поисках подойдет для случая, когда сайт уже запущен на виртуальной машине или хостинге (или вы как раз собираетесь это сделать). Создайте в корневой папке сайта файл с расширением PHP, куда скопируйте следующий простой код:
Выполнение этого кода при открытии файла-страницы на сайте даст весьма подробную информацию об используемой версии PHP для вашего сайта, а также другие важные параметры. Там же будет и расположение файла php.ini на хостинге, которое используется в данный момент.
Основное правило при использовании Apache, Denver и других оболочек для виртуального сервера: вы фактически работаете с тем же Linux’ом, поэтому пути находятся стандартными для этой системы (и для самого PHP) способами, и, скорее всего, содержат соответствующие названия в именах папок. Если советы, касающиеся конкретных CMS, не помогли, просто ищите файл стандартным способом через создание страницы с phpinfo().
Important Settings in php. ini
The php.ini file provides a lot of configuration directives that allow you to modify various behaviors of PHP. In fact, when you open the php.ini file, you may get overwhelmed by the number of directives it provides. I’ll try to group them based on their behavior, and I hope it’ll be easy for you to understand.
Of course, we won’t go through each and every directive, but I’ll try to cover the most important ones. Let’s have a look at the types of directives that we’re going to discuss.
- error handling directives
- file upload directives
- security related directives
- session directives
- miscellaneous directives
Error Handling Directives
In this section, we’ll go through directives that are related to error handling and are useful for debugging during development.
display_errors
The display_errors directive allows you to control whether errors are displayed on the screen during script execution. You can set it to On if you want errors to be displayed on the screen and Off if you want to disable it. It’s important that you don’t ever enable this on a production site—it will slow your site down and could give hackers valuable clues to your site’s security vulnerabilities.
error_reporting
This directive allows you to set the error reporting level. Mostly, this directive works in conjunction with the display_errors directive. This directive can accept E_ALL, E_NOTICE, E_STRICT, and E_DEPRECATED constants.
You can set it to E_ALL if you want to display all types of errors like fatal errors, warnings, deprecated functions, etc. You can also combine the different values if you want to filter out specific errors. For example, if you want to display all errors except notices, you can set it to E_ALL & ~E_NOTICE.
error_log
File Upload Directives
In this section, we’ll see a couple of important directives that allow you to enable file uploading capabilities in your PHP forms.
file_uploads
upload_max_filesize
If you have enabled the file upload feature on your website and you’re facing difficulties in uploading files, this is the directive you should check first. It allows you to set the maximum size of a file that can be uploaded.
post_max_size
This should be larger than the value you’ve set in the upload_max_filesize directive, since file uploads are handled with POST requests.
Security Directives
In this section, we’ll see a few important directives that are related to security.
allow_url_fopen
allow_url_include
The allow_url_include directive is similar to the allow_url_fopen directive, but it enables remote file inclusion in include functions. It allows you to include remote files in the include, include_once, require, and require_once functions.
If you want to enable this directive, you need to make sure that you’ve enabled the allow_url_fopen directive as well.
Session Directives
Session management is one of the most important aspects when you’re working with PHP. In this section, we’ll go through a couple of important session directives.
session.name
The session.name directive allows you to set the name of the session cookie. By default, it is set to PHPSESSID, but you can change it to something else by using this directive.
session.auto_start
If you set the value of the session.auto_start directive to 1, the session module in PHP starts a session automatically on every request, and thus you don’t have to use the session_start function in your scripts.
session.cookie_lifetime
Miscellaneous Directives
In this last section, we’ll see a couple of other directives that are important in the context of PHP script execution.
memory_limit
The memory_limit directive allows you to limit the maximum amount of memory a script is allowed to use.
You want to fine-tune this directive as per your requirements, and you should not set this too high to avoid memory outages on your server—poorly written or buggy scripts can eat up all the memory on your server if you let them!
max_execution_time
The max_execution_time directive sets the maximum amount of time a script is allowed to run before it is terminated. The default is 30 seconds, and you can increase it to a reasonable limit as per your requirements if you need to.
Similar to the memory_limit directive, you should not set this too high to avoid issues on your server.
max_input_time
The max_input_time directive allows you to set the maximum amount of time a script is allowed to parse incoming form data from a GET or POST.
If you have forms on your website that submit a large amount of data, you might like to increase the value of this directive.
PHP Script to Find php. ini Location
If you are working on Windows, Ubuntu or any operating system. You can easily find the location of php.ini configuration file using simple PHP script.
Create a PHP file. Let’s name it inipath.php (you can choose any name with a .php extension) .
Open this file in your browser and you will get the path of the php.ini.

I am using Ubuntu and the location of php.ini in Ubuntu is /etc/php5/apache2/php.ini . Similarly, if you are running this script on Windows and Mac you’ll get the path as per their directory structure.
For version 7.4.3, the php.ini path is /etc/php/7.4/apache2/php.ini.

Где находится php. ini?
В этом разделе мы увидим, как найти файл php.ini, который загружается при запуске сценария PHP. Это может быть непросто — расположение файла php.ini сильно зависит от среды, в которой вы используете PHP. Если вы работаете в Windows, вы, скорее всего, найдете файл php.ini в каталоге вашей установки PHP на системном диске. С другой стороны, если вы работаете в другой операционной системе, трудно угадать точное местоположение файла php.ini — есть несколько возможностей.
Здесь на phpinfo() приходит функция phpinfo() . Он скажет вам, где находится php.ini , а также выведет всю важную информацию о конфигурации PHP.
Вы можете запустить phpinfo() , создав файл .php и вызвав эту функцию. Создайте файл phpinfo.php со следующим содержимым и поместите его в корневой каталог документа:
Загрузите этот файл в свой браузер, и вы должны увидеть вывод phpinfo() . Посмотрите на следующий раздел.

Как видите, есть два раздела. Первый, путь к файлу конфигурации (php.ini) , указывает путь по умолчанию для файла php.ini в вашей системе. И второй, Loaded Configuration File , — это путь, из которого загружается файл php.ini при запуске PHP.
Таким образом, вы можете редактировать файл php.ini, указанный в разделе « Загруженный файл конфигурации », и это должно работать в большинстве случаев. Конечно, если вы используете PHP как модуль Apache, вам необходимо перезапустить сервер Apache, чтобы убедиться, что изменения, внесенные вами в файл php.ini , отражены.
С другой стороны, если вы используете программное обеспечение, такое как WAMP или XAMPP, для запуска стека веб-разработки, вам еще проще изменить файл php.ini — вы можете напрямую получить к нему доступ через пользовательский интерфейс WAMP или XAMPP.
В следующем разделе мы рассмотрим несколько важных настроек в файле php.ini .
Лучшие PHP-скрипты на CodeCanyon
Изучите тысячи лучших и самых полезных PHP-скриптов, когда-либо созданных на CodeCanyon . С помощью недорогой разовой оплаты вы можете приобрести эти высококачественные темы WordPress и улучшить работу своего сайта для себя и своих посетителей.

Вот несколько самых продаваемых и новых PHP-скриптов, доступных в CodeCanyon на 2020 год.
-

14 лучших PHP-событий и сценариев бронирования
-

8 лучших скриптов PHP URL Shortener
-

12 лучших контактных форм PHP-скриптов
-

Сравнение 5 лучших PHP Form Builders
-

Создавайте красивые формы с помощью PHP Form Builder
Важные настройки в php. ini
Файл php.ini содержит множество директив конфигурации, которые позволяют вам изменять различные варианты поведения PHP. Фактически, когда вы открываете файл php.ini , вы можете быть поражены количеством директив, которые он предоставляет. Я постараюсь сгруппировать их по их поведению и надеюсь, что вам будет легко понять.
Конечно, мы не будем проходить каждую директиву, но я постараюсь охватить наиболее важные из них. Давайте посмотрим на типы директив, которые мы собираемся обсудить.
- директивы по обработке ошибок
- директивы загрузки файлов
- директивы, связанные с безопасностью
Директивы по обработке ошибок
В этом разделе мы рассмотрим директивы, связанные с обработкой ошибок и полезные для отладки во время разработки.
display_errors
Директива display_errors позволяет вам контролировать, будут ли отображаться ошибки на экране во время выполнения скрипта. Вы можете установить его на On если вы хотите, чтобы ошибки отображались на экране, и Off если вы хотите отключить его. Важно, чтобы вы никогда не включали это на рабочем сайте — это замедлит работу вашего сайта и может дать хакерам ценные подсказки к уязвимостям безопасности вашего сайта.
error_reporting
Эта директива позволяет вам установить уровень сообщения об ошибках. В основном эта директива работает в сочетании с директивой display_errors . Эта директива может принимать E_ALL , E_NOTICE , E_STRICT и E_DEPRECATED .
Вы можете установить его на E_ALL если хотите отображать все типы ошибок, такие как фатальные ошибки, предупреждения, устаревшие функции и т. Д. Вы также можете комбинировать различные значения, если вы хотите отфильтровать конкретные ошибки. Например, если вы хотите отобразить все ошибки, кроме уведомлений, вы можете установить для него значение E_ALL & ~E_NOTICE .
error_log
На производственном веб-сайте вам нужно убедиться, что PHP не отображает никаких ошибок в клиентском браузере. Вместо этого вы можете где-то регистрировать ошибки, чтобы потом можно было ссылаться на них, если с вашим сайтом что-то не так. Директива error_log позволяет вам указать имя файла, в котором будут регистрироваться ошибки. Вы должны убедиться, что этот файл доступен для записи пользователю веб-сервера.
Директивы для загрузки файлов
В этом разделе мы увидим несколько важных директив, которые позволяют вам включить возможности загрузки файлов в ваших формах PHP.
file_uploads
Это логическая директива, которая позволяет разрешать загрузку файлов HTTP. Если вы установите значение « On , Вы можете использовать поле «Файл» в своих формах, и пользователи смогут загружать файлы со своего компьютера. С другой стороны, если вы установите для этого параметра значение Off , Загрузка файлов будет полностью отключена.
upload_max_filesize
Если вы включили функцию загрузки файлов на своем веб-сайте и столкнулись с трудностями при загрузке файлов, эту директиву следует проверить в первую очередь. Позволяет установить максимальный размер файла, который можно загрузить.
По умолчанию установлено значение 2 МБ, поэтому пользователи не могут загружать файлы размером более 2 МБ. Вы можете настроить это значение в соответствии с вашими требованиями — часто вы хотите увеличить это ограничение, чтобы разрешить загрузку больших файлов.
post_max_size
Этот параметр позволяет вам установить максимальный размер данных POST в ваших формах. Когда пользователь отправляет форму методом POST, общий размер данных POST не должен превышать значение, установленное в этой директиве.
Это должно быть больше, чем значение, которое вы установили в директиве upload_max_filesize , поскольку загрузка файлов обрабатывается с помощью запросов POST.
Директивы по безопасности
В этом разделе мы увидим несколько важных директив, связанных с безопасностью.
allow_url_fopen
Директива allow_url_fopen по умолчанию отключена. Но когда он включен, он позволяет удаленно включать файлы в функции файлов PHP. Это означает, что ваши PHP-файлы могут содержать код с других серверов. Будьте осторожны при включении этого — если ваш код подвергается атаке с помощью инъекций, удаленное включение файлов значительно облегчит злоумышленнику взлом вашего сервера.
allow_url_include
Директива allow_url_include аналогична директиве allow_url_fopen , но позволяет включить удаленное включение файлов в функции include . Он позволяет включать удаленные файлы в функции include , include_once , require и require_once .
Если вы хотите включить эту директиву, вам необходимо убедиться, что вы также allow_url_fopen директиву allow_url_fopen .
Управление сессиями является одним из наиболее важных аспектов при работе с PHP. В этом разделе мы рассмотрим пару важных директив сессии.
session.name
Директива session.name позволяет вам установить имя cookie сессии. По умолчанию он имеет значение PHPSESSID , но вы можете изменить его на что-то другое, используя эту директиву.
session.auto_start
Если вы установите значение директивы session.auto_start равным 1 , сессионный модуль в PHP запускает сессию автоматически при каждом запросе, и, таким образом, вам не нужно использовать функцию session_start в ваших скриптах.
session.cookie_lifetime
Директива session.cookie_lifetime позволяет вам установить время жизни куки сессии. По умолчанию установлено значение 0 секунд, и это означает, что cookie сеанса удаляется при закрытии браузера. Это действительно полезная настройка, которая позволяет вам настроить функцию «помни меня», позволяя пользователям выбирать, где они остановились на вашем сайте.
В этом последнем разделе мы увидим несколько других директив, которые важны в контексте выполнения скрипта PHP.
memory_limit
Директива memory_limit позволяет вам ограничить максимальный объем памяти, который скрипту разрешено использовать.
Вы хотите точно настроить эту директиву в соответствии с вашими требованиями, и вам не следует устанавливать ее слишком высоко, чтобы избежать перебоев с памятью на вашем сервере — плохо написанные или с ошибками скрипты могут поглотить всю память на вашем сервере, если вы позволите им!
max_execution_time
Директива max_execution_time устанавливает максимальный промежуток времени, в течение которого скрипту разрешается запускаться до его завершения. Значение по умолчанию составляет 30 секунд, и вы можете увеличить его до разумного предела согласно вашим требованиям, если вам нужно.
Подобно директиве memory_limit , вам не следует устанавливать это значение слишком высоким, чтобы избежать проблем на вашем сервере.
max_input_time
Директива max_input_time позволяет установить максимальное время, в течение которого скрипту разрешается анализировать входящие данные формы из GET или POST.
Если на вашем веб-сайте есть формы, которые предоставляют большой объем данных, вы можете увеличить значение этой директивы.
Where Is php. ini?
In this section, we’ll see how to find the php.ini file which is loaded when you run the PHP script. This can be tricky—the location of the php.ini file vastly varies by the environment you’re running PHP with. If you’re running Windows, you’ll likely find the php.ini file within the directory of your PHP installation in the system drive. On the other hand, if you’re running another operating system, then it’s difficult to guess the exact location of the php.ini file—there are several possibilities.
This is where the phpinfo() function comes to the rescue. It will tell you where php.ini is located, and it will also output all the important PHP configuration information.



As you can see, there are two sections. The first one, Configuration File (php.ini) Path, indicates the default path of the php.ini file in your system. And the second one, Loaded Configuration File, is the path from where the php.ini file is being loaded when PHP is run.
So you can edit the php.ini file indicated in the Loaded Configuration File section, and that should work in most cases. Of course, if you’re running PHP as an Apache module, you need to restart the Apache server to make sure that the changes you’ve made in the php.ini file are reflected.
On the other hand, if you’re using software like WAMP or XAMPP to run your web development stack, it’s even easier to modify the php.ini file—you can directly access it via the WAMP or XAMPP UI.
In the next section, we’ll explore a couple of important settings in the php.ini file.
The Best PHP Scripts on CodeCanyon
Explore thousands of the ga-analytics#sendMarketClickEvent»>best and most useful PHP scripts ever created on CodeCanyon. With a low-cost one-time payment, you can purchase these high-quality WordPress themes and improve your website experience for you and your visitors.



Here are a few of the best-selling and up-and-coming PHP scripts available on CodeCanyon for 2020.
Did you find this post useful?
![]()
Software Engineer, FSPL, India
I’m a software engineer by profession, and I’ve done my engineering in computer science. It’s been around 14 years I’ve been working in the field of website development and open-source technologies.
Primarily, I work on PHP and MySQL-based projects and frameworks. Among them, I’ve worked on web frameworks like CodeIgnitor, Symfony, and Laravel. Apart from that, I’ve also had the chance to work on different CMS systems like Joomla, Drupal, and WordPress, and e-commerce systems like Magento, OpenCart, WooCommerce, and Drupal Commerce.
I also like to attend community tech conferences, and as a part of that, I attended the 2016 Joomla World Conference held in Bangalore (India) and 2018 DrupalCon which was held in Mumbai (India). Apart from this, I like to travel, explore new places, and listen to music!
Locate the php. ini File With cPanel
In this section, we’ll see how you could edit the php.ini file to your WordPress with the help of cPanel. Of course, you need to have cPanel access on your host to use this option!






Now, try to find the php.ini file in the list, and if it doesn’t exist, you could create a new file under the document root.
How to Locate the php. ini File in WordPress
In this section, we’ll see how to find the php.ini file, which is loaded when you run WordPress. This can be tricky—the location of the php.ini file vastly varies by the environment you’re running PHP with.
The best way to know the location of the php.ini file is to use the phpinfo() function. It will tell you where php.ini is located, and it will also output all the important PHP configuration information.



As you can see, there are two sections. The first one, Configuration File (php.ini) Path, indicates the default path of the php.ini file in your system. And the second one, Loaded Configuration File, is the path from where the php.ini file is being loaded when PHP is run.
So you can edit the php.ini file indicated in the Loaded Configuration File section, and that should work in most cases. Once you’ve identified the php.ini file location, don’t forget to delete the phpinfo.php file from your site.
If you don’t have access to the location of the php.ini file, you could try the solution described in the next section.
Настройка файла php. ini
Для удобства ориентирования мы разобьем все параметры по категориях в зависимости от их назначения. Вам будет достаточно найти нужный параметр и изменить его значение. А теперь откройте файл настроек php, например, для модуля apache и перейдем к настройке. Чтобы избежать ошибок не добавляйте новые строки, а ищите уже существующие и изменяйте значения на нужные:
sudo gedit /etc/php5/apache/php.ini

Сначала идет немного информации о самом файле в виде комментариев, затем интересующие нас настройки.
Вывод ошибок в php
Настройка php 7 обычно начинается с конфигурации вывода ошибок. Все настройки вывода ошибок находятся в разделе Error handling and logging. По умолчанию вывод ошибок на экран во время выполнения скрипта отключен. Это сделано для того, чтобы пользователи не смогли увидеть ничего лишнего. Вместо этого, все ошибки записываются в лог файл. Если вы используете php на домашнем компьютере, то такие меры не нужны и вы можете сразу выводить все на экран:

Замените off на on. В php используются различные типы ошибок, например, критические, предупреждения, ошибки синтаксиса, с помощью строки error_reporting вы можете включить вывод только определенных типов ошибок:
error_reporting = E_ALL & ~E_DEPRECATED
Если нужно объединить несколько типов ошибок, то используйте символ &, а для отключения отображения поставьте перед типом знак ~. Приведенный выше пример отображает все ошибки (E_ALL), кроме сообщений об устаревших функциях (E_DEPRECATED). Вы можете отключить все типы использовав 0:
error_reporting = 0
Включите запись ошибок php в лог файл, если не выводите их на экран:
log_errors = On
Чтобы не засорять лог однотипными сообщениями можно игнорировать повторяющиеся ошибки в пределах одного исполнения:
ignore_repeated_errors = On
Ограничения ресурсов

Если бы скрипты php никак не ограничивались в ресурсах, то они запросто могли бы перегрузить сервер и не дать ему нормально работать. Поэтому, по умолчанию php устанавливает жесткие ограничения, но, возможно, вам нужно будет их немного ослабить.
По умолчанию максимальное время выполнения скрипта — 30 секунд, сделаем минуту:
max_execution_time = 30
Если указать 0, то скрипт может выполняться бесконечно. Вы также можете ограничить время, на протяжении которого скрипт будет загружать данные, 60 секунд:
Максимальное количество переменных в GET и POST:
max_input_vars = 1000
Следующий параметр задает максимальное количество памяти, которую может использовать один скрипт во время своего выполнения, в мегабайтах:
memory_limit = 128M
Максимальный размер данных, передаваемых в POST запросе тоже ограничивается, размер по умолчанию — 8 Мегабайт:
post_max_size = 8M
Вы можете ограничить область действия php в системе с помощью опции openbase_dir, она указывает папку, выше которой скрипт не может получить доступ к файловой системе:
open_basedir = /var/www/
С помощью директив disable_functions и disable_classes вы можете отключить использование в скриптах определенных функций или классов, например, это может быть полезно для веб-хостингов. В этом примере мы отключаем использование функции ini_set, которая позволяет менять настройки php из скрипта:
disable_functions = ini_set
Директории по умолчанию

Файл настройки php.ini позволяет указать пути в файловой системе по умолчанию для различных действий. Вы можете задать папки где система будет искать скрипты, если вы попытаетесь подключить их с помощью инструкции include:
Папка с модулями php:
Папка для записи временных файлов:
sys_temp_dir = "/tmp"
Загрузка файлов

Для того чтобы пользователи могли загружать свои файлы на сервер, например, фото, нужно включить эту функцию в php:
file_uploads = On
Максимальный размер загружаемого файла:
upload_max_filesize = 2M
Максимальное количество файлов, которые может загрузить один скрипт:
max_file_uploads = 20
Настройка php.ini практически завершена, нам остались лишь расширения.
Настройка расширений
Расширения позволяют очень сильно увеличить функциональность php. Например, благодаря расширениям вы можете использовать в своих скриптах базы данных mysql, postgresql, mysqli, sqlite, графическую библиотеку gd и многое другое. Все это включается в этом разделе.

Обратите внимание, что для windows расширение будет иметь формат dll, но для linux нужно использовать so. В следующих секциях идет настройка каждого из расширений, но мы их рассматривать не будем потому что они обычно не требуют настройки.
Php. ini File
The php.ini file is a default configuration file used when your PHP application runs. When PHP starts it reads the configuration setting from the php.ini file.
If you have installed LAMP on a Ubuntu operating system and unable to find and edit this file then this tutorial is for you.
How to open & edit the php. ini configuration file on a Terminal
To open & edit the php.ini file I am using vim/vi editor.
NOTE – Once you have done the changes in the php.ini file. You need to restart the apache web server so that the new changes get reflected.
To restart the Apache WebServer.
What Is php. ini?
Whether you’re a PHP beginner or a seasoned developer, I’m sure that you’ve heard of php.ini: the most important PHP configuration file.
When PHP is run, it looks for the php.ini file in some specific locations and loads it. This file allows you to configure a few important settings that you should be aware of. Quite often, you’ll find you need to tweak settings in the php.ini file.
On the other hand, it’s certainly possible that you’ve never needed to modify php.ini. PHP can run happily with the settings provided in the default php.ini file, since PHP ships with these default recommended settings. In fact, there are no critical configuration parameters that you must set in order to run PHP.
However, the php.ini file provides a couple of important settings that you want to make yourself familiar with. In fact, as a PHP developer, it’s inevitable, and you’ll encounter it sooner rather than later.
Php. ini File Location in Ubuntu
To view the files present in apache2 directory, type ls command. The files present in this directory (conf.d and php.ini) are displayed.
For PHP 7.4 version
The path of php.ini is
If you are not familiar with Linux commands then read my previous post on Linux Commands with Examples .
The other easiest way to locate the php.ini location is using locate command.
Popular PHP Articles
Abstract vs Interface in PHP
Abstract class in PHP
Programming Videos Tutorial
Conclusion
I hope this tutorial helped you to find and edit the php.ini file. If you are still facing any issue you can ask your question through comments.
Расположение 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, например. Если файл вовсе не удается обнаружить, то его можно создать вручную или скопировать из другого места, но только если знаете примерную структуру файла.
What Is the php. ini File?
First of all, you should know that WordPress is built on the PHP programming language. Every time a WordPress page is loaded, PHP has to run on the server. And when PHP is run, it looks for a php.ini file in some specific locations and loads it. This file configures how PHP works and has a big impact on PHP software like WordPress.
It’s certainly possible that you’ve never needed to modify php.ini. PHP can run happily with the settings provided in the default php.ini file, since PHP ships with these default recommended settings. In fact, there are no critical configuration parameters that you must set in order to run PHP.
However, the php.ini file provides a couple of important settings that you want to make yourself familiar with. In fact, for PHP developers, it’s inevitable that you’ll encounter it sooner or later.
Ищем файл настроек 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 под свои потребности?
Настройка важных и второстепенных параметров может быть весьма долгим процессом. Если у вас есть выделенный веб сервер, и вы хотите тонко настроить его работу, то рекомендуем обратиться к одному из онлайн руководств по параметрам в PHP.ini для продвинутых пользователей. Сам процесс задания параметров сводится к изменению числовых или текстовых значений для одной из строк-директив.
Вот некоторые из настроек, которые можно изменить, если владелец хостинга разрешает использовать php.ini и редактировать его самостоятельно:
Эти две строки важны для любого пользователя, желающего снять ограничение на объем загружаемых файлов. Эта настройка проверяется при импорте записей в Вордпресс и другие CMS того же типа, значения по умолчанию в целях безопасности сервера сделаны очень скромными. Если вы точно знаете, что делаете, можете значительно увеличить лимит, либо просто подогнать его под размер импортируемых файлов (если уже знаете их примерный объем).
Здесь задается максимальное время в секундах, которое отводится на выполнение каждого скрипта и загрузку данных в процессе его работы соответственно.
memory_limit = 16M
Эта важная директива задает максимальное выделение памяти под один отдельный скрипт. Не завышайте это значение, если не знаете, для чего это может понадобиться. Скрипты PHP достаточно легковесны с точки зрения обычного пользователя.
Не забудьте сохранить изменения в файле и полностью перезапустить сервер – тогда настройки будут взяты из обновленного файла php.ini, и вы сможете проверить изменения.
Conclusion
Today, we discussed how you could find the php.ini file in your WordPress installation. Along with that, we also discussed how to change settings in that file. Feel free to post your queries using the feed below. And check out some of our other useful WordPress troubleshooting resources!
Useful WordPress Troubleshooting Resources
Here’s a list of tutorials and other resources to help you troubleshoot problems with WordPress.
Did you find this post useful?
![]()
Software Engineer, FSPL, India
I’m a software engineer by profession, and I’ve done my engineering in computer science. It’s been around 14 years I’ve been working in the field of website development and open-source technologies.
Primarily, I work on PHP and MySQL-based projects and frameworks. Among them, I’ve worked on web frameworks like CodeIgnitor, Symfony, and Laravel. Apart from that, I’ve also had the chance to work on different CMS systems like Joomla, Drupal, and WordPress, and e-commerce systems like Magento, OpenCart, WooCommerce, and Drupal Commerce.
I also like to attend community tech conferences, and as a part of that, I attended the 2016 Joomla World Conference held in Bangalore (India) and 2018 DrupalCon which was held in Mumbai (India). Apart from this, I like to travel, explore new places, and listen to music!
Выводы
В этой статье мы рассмотрели как выполняется настройка php на сервере или обычном компьютере для разработки веб-сайтов. Файл настроек php имеет довольно простую структуру и с ним довольно не сложно справиться. После завершения всех настроек и сохранения изменений не забудьте перезагрузить веб-сервер или сервис php-fpm.
Вообще говоря, php-fpm это отдельная тема, потому что там есть много дополнительных настроек, и, возможно, мы рассмотрим его в одной из следующих статей. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Conclusion
It’s impossible to cover each and every directive within a single article, but I’ve tried to cover the important ones. Feel free to post your queries if you want to know about any specific directives, and I’ll be happy to help!
As a PHP developer, it’s important that you understand the different directives in the php.ini file, and that should help you to fine-tune your PHP configuration to your requirements.
Вывод
Невозможно охватить каждую директиву в одной статье, но я попытался охватить важные. Не стесняйтесь размещать ваши запросы, если вы хотите узнать о каких-либо конкретных директивах, и я буду рад помочь!
Как разработчику PHP, важно, чтобы вы понимали различные директивы в файле php.ini , и это должно помочь вам настроить вашу конфигурацию PHP под ваши требования.

