Editing php ini file

Php.ini: Edit PHP configurations on a cloud server with Linux

PHP configurations can be changed using the “php.ini” file. Php.ini is the main configuration file in for the open-source scripting language PHP.

Requirements

You can find the right cloud server on IONOS.

View the server’s PHP configurations

To view the current PHP configurations for your server, create a file named phpinfo.php in your website’s main directory:

sudo nano /var/www/html phpinfo.php 

Then put the following content into this file:

Save and exit the file, then view it in a browser (“http://example.com/phpinfo.php”).

For security reasons, it is best to delete this file after you are finished.

How to find the php.ini file

When PHP starts up, it will search several possible locations on the server for a php.ini file. The default location for the php.ini file is:

You can also create a new php.ini file with only the PHP configurations you need to change and place it in the same directory as the PHP script. This will override the configurations in the default php.ini file.

Читайте также:  View all php processes

However, this will only be effective for scripts in the same directory as the php.ini file. It will not affect subdirectories. You will need to copy the new php.ini file to each working directory.

How to edit the php.ini file

To open the default php.ini file for editing, use one of the following commands (depending on which Linux distribution you’re using):

  • Ubuntu 16.04: sudo nano /etc/php/7.0/apache2
  • CentOS 7: sudo nano /etc/php.ini

Make the required changes. Each line that begins with a semicolon is “commented out” which means that PHP will ignore that line. If you want to enable an option that has been disabled this way, delete the semicolon at the beginning of the line to enable it.

Save and exit the file. Then restart the web server in order for the changes to take effect:

  • Ubuntu/Debian: sudo systemctl restart apache2
  • CentOS: sudo systemctl restart httpd

Change the PHP Version on a Plesk Server

Change the PHP Version on a Plesk Server

Learn how to change the PHP version for a server with Plesk. This tutorial includes instructions on how to find the PHP version your Plesk server is using, change to a different PHP version, and install a different PHP version if necessary.

Changing PHP Version - Common Errors

Changing PHP Version — Common Errors

In this article we want to discuss with you common bugs in PHP version changes and work out solutions to fix them.

Install and Use PHP Composer on Ubuntu 16.04

Install and Use PHP Composer on Ubuntu 16.04

PHP Composer is a package management system for PHP which prevents users from having to «reinvent the wheel» when it comes to commonly-used website components like user authentication or database management. Composer is modelled on other popular package management systems like Ruby’s Bundler.

Using PHP Composer in IONOS Webhosting Packages

Using PHP Composer in IONOS Webhosting Packages

Composer is a so-called «Dependency Management Tool», which makes it possible to comfortably reference external sources and libraries in one’s own PHP projects and to keep them up-to-date.

PHP 8: What you need to know about the latest version

PHP 8: What you need to know about the latest version

PHP is one of the most important languages on the Internet. Many content management systems like WordPress, TYPO3 or Joomla are based on PHP. With the release of PHP 8, various new features were introduced. Also some old features were reworked, meaning that errors may occur if the code is not up to date. You can find all the important information about the new features of PHP 8 here.

Источник

Editing php ini file

Did you find this document helpful?

Would you like to provide more feedback on this document?

Table of Contents

How to Edit Your php.ini File

Last modified: July 19, 2022

Overview

You can update the settings of your server’s php.ini file to help secure your server. The method to use depends on your version of EasyApache.

  • You must also use other security measures with these settings. When you use these alone, your server’s security is at risk. Malicious users can bypass most hardening measures.
  • Apache reads all files with the .ini file extension. If you have a custom .ini file, you must update it manually.

Editing in EasyApache 3

On systems that run EasyApache 3, the /usr/local/lib/ directory contains your server’s php.ini file.

Editing in EasyApache 4

We recommend only editing these files with WHM’s MultiPHP INI Editor interface (WHM » Home » Software » MultiPHP INI Editor). This ensures that an operable version of PHP exists on the system.

On systems that run EasyApache 4, each version of PHP uses a separate php.ini file. You must make changes separately to each file. Each file exists in the /opt/cpanel/ea-php72/root/etc/php.ini file, where 72 is the PHP version number.

Directives

Directive Description Recommended value
safe_mode This directive helps solve many problems that occur with using PHP in a shared hosting environment. It compares the PHP script’s UID with the UIDs of files and directories that it tries to access. If the UIDs don’t match, the system doesn’t allow the script access.
  • This setting only affects servers that use the mod_php Apache module.
  • If your system runs EasyApache 4, change this directive in the Editor Mode section of WHM’s MultiPHP INI Editor interface (WHM >> Home >> Software >> MultiPHP INI Editor).

Do not rely on this security measure alone. It is trivial to send false referrer information.

If your system runs EasyApache 4, change this directive in the Editor Mode section of WHM’s MultiPHP INI Editor interface (WHM » Home » Software » MultiPHP INI Editor).

Additional Documentation

Источник

Настройка файла php.ini

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

Интерпретатор php может поставляться в виде модуля для Apache, выполнять скрипты из командной строки или в виде отдельного сервиса php-fpm. Эти сервисы отличаются своими возможностями, и предназначением, но для любого вида интерпретатора нужно задать базовые настройки, например, рабочая папка, включенные расширения, отображение ошибок и так далее. Все эти настройки задаются через файл php.ini. В этой инструкции мы рассмотрим как выполняется настройка файла php.ini в операционных системах Linux, хотя все информация подойдет и для Windows.

Если у вас еще не установлен интерпретатор языка программирования php, то вы можете ознакомиться со статьей установка lamp в Ubuntu 16.04.

Расположение и синтаксис php.ini

Для каждой версии интерпретатора конфигурационный файл php.ini находится в отдельной папке. Но все конфигурационные файлы находятся в папке /etc/php, например, /etc/php5:

php

Папка conf.d содержит общие настройки для различных расширений и модулей, они не будут нас сейчас интересовать. Более интересны следующие три папки — apache, cli и fpm. В них содержатся конфигурационные файлы php.ini для каждого из этих интерпретаторов.

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

Что касается синтаксиса файла, то он разделен на секции, сначала идет секция настройки php, которая разделена на подсекции в зависимости от типа настроек, дальше идут секции настройки разных модулей. Синтаксис самих настроек очень прост, он соответствует привычному синтаксису ini файлов. Строка начинается с имени настройки, затем следует знак равно, а за ним значение:

имя_настройки = значение_параметра

Символами [] обозначается имя секции, например, [PHP], а символ ; означает комментарий, он и все символы после него не читаются интерпретатором. А теперь рассмотрим как выполняется настройка php.ini и переберем самые важные параметры.

Настройка файла php.ini

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

sudo gedit /etc/php5/apache/php.ini

php1

Сначала идет немного информации о самом файле в виде комментариев, затем интересующие нас настройки.

Вывод ошибок в php

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

php3

Замените off на on. В php используются различные типы ошибок, например, критические, предупреждения, ошибки синтаксиса, с помощью строки error_reporting вы можете включить вывод только определенных типов ошибок:

error_reporting = E_ALL & ~E_DEPRECATED

Если нужно объединить несколько типов ошибок, то используйте символ &, а для отключения отображения поставьте перед типом знак ~. Приведенный выше пример отображает все ошибки (E_ALL), кроме сообщений об устаревших функциях (E_DEPRECATED). Вы можете отключить все типы использовав 0:

Включите запись ошибок php в лог файл, если не выводите их на экран:

Чтобы не засорять лог однотипными сообщениями можно игнорировать повторяющиеся ошибки в пределах одного исполнения:

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

php6

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

По умолчанию максимальное время выполнения скрипта — 30 секунд, сделаем минуту:

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

Максимальное количество переменных в GET и POST:

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

Максимальный размер данных, передаваемых в POST запросе тоже ограничивается, размер по умолчанию — 8 Мегабайт:

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

С помощью директив disable_functions и disable_classes вы можете отключить использование в скриптах определенных функций или классов, например, это может быть полезно для веб-хостингов. В этом примере мы отключаем использование функции ini_set, которая позволяет менять настройки php из скрипта:

Директории по умолчанию

php4

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

Папка для записи временных файлов:

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

php5

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

Максимальный размер загружаемого файла:

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

Настройка php.ini практически завершена, нам остались лишь расширения.

Настройка расширений

Расширения позволяют очень сильно увеличить функциональность php. Например, благодаря расширениям вы можете использовать в своих скриптах базы данных mysql, postgresql, mysqli, sqlite, графическую библиотеку gd и многое другое. Все это включается в этом разделе.

Для включения расширения достаточно убрать комментарий перед строкой с его командой, например:

extension=php_mysql.so
extension=php_mbstring.so
extension=php_pgsql.so

php2

Обратите внимание, что для windows расширение будет иметь формат dll, но для linux нужно использовать so. В следующих секциях идет настройка каждого из расширений, но мы их рассматривать не будем потому что они обычно не требуют настройки.

Выводы

В этой статье мы рассмотрели как выполняется настройка php на сервере или обычном компьютере для разработки веб-сайтов. Файл настроек php имеет довольно простую структуру и с ним довольно не сложно справиться. После завершения всех настроек и сохранения изменений не забудьте перезагрузить веб-сервер или сервис php-fpm.

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

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