Linux set php ini

How to Edit PHP.INI File

PHP.INI file is the default configuration file for application that require PHP. PHP.INI file is used to control variables like upload file size, resource limits, file timeouts etc..

In this tutorial I will guide how you can edit php.ini file for your running application.

The most common parameters changed in the php.ini file are:

safe_mode register_globals upload_max_filesize post_max_size max_execution_time

If you’re experiencing difficulty with your web application, you can edit the php.ini or create a new text file. For example, you’re unable to install a WordPress theme or plugin through your WP Dashboard.

Please make a copy Before making any changes, it’s a good idea to copy the original settings, both for reference and to easily restore the original if necessary.

Prerequisites

1. Root access should be enabled on the server.
2. To know how to connect your server via SSH.

Edit PHP.INI File

Use the below command to edit the php.ini file.

Global php.ini

Follow the below command at the command prompt to start editing the global php.ini file.

When you are finished editing your php.ini, you will need to restart your Apache server. Run the following command:

Domain Specific PHP.INI

Plesk 11.0 and later features a domain-specific php.ini file. This domain-level version of php.ini overrides the global php.ini settings. There are two main ways to edit this file.

Via Plesk

You can edit the domain-level php.ini file using Plesk Control Panel. Follow the below steps to edit the php.ini file.

1. Select the Websites and domain tab.

2. Expand the advanced options by clicking the arrow.

edit-php-ini-file

3. Select PHP setting from the menu.

php-version

4. Most common PHP directives are in this page and ready for you to modify. You can select common options from the drop-down menus, or create your own by using the “Custom Variable” option. For directives that are not listed, raw text can be input in the box at the bottom of this screen.

5. Click “OK” at the bottom to save.

If you choose to use the Plesk “PHP Settings” menu to edit php.ini, it will overwrite any manual changes you have made to /var/www/vhosts/DOMAIN/etc/php.ini via SSH or FTP.

Via SSH

First of all you will need to login server via SSH.

Use the following command to start editing the domain-level php.ini:

# vim /var/www/vhosts/DOMAIN/etc/php.ini

Be sure to replace DOMAIN with the domain name you want to edit.

When you are finished editing your php.ini, you will need to restart your Apache server. Run the following command:

Источник

Настройка файла 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.

Источник

Настройка параметров PHP (Debian / Ubuntu)

В статье описана настройка параметров PHP на сервере с операционными системами Ubuntu или Debian.

Настройка параметров производится в конфигурационном файле php.ini .

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

# Если PHP работает как модуль Apache:

/etc/php/x.x/apache2/php.ini

# Если PHP работает в режиме FastCGI:

/etc/php/x.x/cgi/php.ini

# Настройки PHP в командной строке:

/etc/php/x.x/cli/php.ini

# где x.x — соответствующая версия обработчика php

Определить точное расположение файла php.ini можно с помощью скрипта phpinfo.php .

Создание phpinfo-скрипта

Подключитесь к серверу по SSH и выполните следующие действия:

1. Перейдите в директорию сайта:

Например, если на сервере установлен LAMP (автоматически при создании сервера):

Если на сервере установлена панель VestaCP:

cd /home/имя_пользователя/web/имя_домена/public_html

2. Создайте файл phpinfo.php :

3. Добавьте в него следующее содержимое:

4. Сохраните изменения (нажать Ctrl+X для выхода из nano , далее Y для сохранения изменений и Enter).

После перейдите по адресу http://вашдомен/phpinfo.php , и в браузере будет отображена информация о настройках PHP.

Путь к конфигурационному файлу php.ini можно найти в строке Loaded Configuration File :

Настройка параметров

Рассмотрим настройку на примере параметра mbstring.func_overload .

1. Найдите нужный параметр в php.ini при помощи команды:

grep -ni 'имя_параметра' /путь/до/php.ini 
grep -ni 'mbstring.func_overload' /etc/php/7.2/apache2/php.ini

Ключ -n покажет, в какой строке расположена директива, чтобы можно было перейти сразу к ней.

В данном случае номер строки — 1704.

2. Откройте файл в текстовом редакторе, указав номер нужной строки:

nano +номер_строки путь/до/php.ini 
nano +1704 /etc/php/7.2/apache2/php.ini

3. Отредактируйте строку: уберите знак комментария ( ; ) и измените значение на нужное вам:

В данном случае мы указываем 2:

4. Сохраните изменения: нажмите Ctrl+x для выхода из nano , далее Y для сохранения изменений и Enter.

5. Перезапустите веб-сервер Apache командой:

Источник

Читайте также:  Css show hidden image
Оцените статью