- Изменение настроек PHP на сервере Ubuntu 14.04
- Требования
- Просмотр конфигураций PHP
- Изменение настроек PHP
- Заключение
- How to install and configure PHP
- Prerequisites
- Install PHP
- Install optional packages
- Configure PHP
- Test your setup
- Further reading
- Настройка параметров PHP (Debian / Ubuntu)
- Создание phpinfo-скрипта
- Настройка параметров
Изменение настроек PHP на сервере Ubuntu 14.04
PHP – это серверный язык сценариев для быстрого построения динамических страниц. PHP используется многими блог-платформами и системами управления контентом (например, WordPress и Drupal). Также PHP является одним из компонентов программных стеков LAMP и LEMP.
Обновление и отладка настроек PHP – обычное дело при построении веб-сайта. Часто на одном сервере существует несколько установок PHP, каждая из которых имеет свой собственный конфигурационный файл.
Данное руководство научит просматривать и обновлять текущие настройки PHP.
Требования
- Сервер Ubuntu 14.04.
- Не-root пользователь с доступом к sudo (подробнее – здесь).
- Базовые навыки редактирования файлов в Linux.
- Предустановленный веб-сервер и PHP (например, стек LAMP).
Примечание: Данное руководство подходит для стеков LAMP и LEMP, WordPress, PHPMyAdmin, Magento, Joomla, Drupal, Mediawiki и ownCloud.
Данное руководство предназначено для Ubuntu 14.04. в других системах содержимое файла php.ini будет таким же, однако его местонахождение может отличаться.
Просмотр конфигураций PHP
Чтобы просмотреть текущие параметры PHP, создайте страницу с функцией phpinfo.
Сначала откройте каталог, в котором хранятся файлы сайта. К примеру, стандартным каталогом Apache на сервере Ubuntu 14.04 является /var/www/html/:
В этом каталоге создайте файл info.php:
sudo nano /var/www/html/info.php
Вставьте в него такой код:
Примечание: Иногда файл info.php хранится в каталоге сайта по умолчанию.
После этого посетите страницу info.php в браузере:
На экране появится страница, содержащая подробности окружения PHP, версию ОС, пути и значения параметров конфигурации.
Файл справа от строки Loaded Configuration File – это тот файл, который содержит текущие настройки PHP.
Данная страница отображает текущие параметры веб-сервера. При помощи функции поиска в браузере можно найти параметры post_max_size и upload_max_filesize, которые ограничивают размеры загружаемых файлов.
Важно! Страница info.php содержит конфиденциальные данные (версию ОС, подробности настроек системы, веб-сервера и PHP), при этом она доступна в сети. Это огромный риск для безопасности сервера, потому её нужно удалить сразу после проверки.
Изменение настроек PHP
Некоторым PHP-приложениям необходимо иметь возможность подгружать более объёмные файлы (например, темы и плагины для WordPress). Для этого нужно отредактировать php.ini:
sudo nano /etc/php5/apache2/php.ini
Примечание: В команде указан стандартный путь к файлу Apache в Ubuntu 14.04. В случае необходимости измените его.
За объём подгружаемых файлов отвечают параметры:
post_max_size = 8M
upload_max_filesize = 2M
Измените стандартные значения согласно требованиям вашего приложения. К примеру, чтобы подгружать файлы до 30MB, нужно установить такие значения:
post_max_size = 30M
upload_max_filesize = 30M
Также в файле можно изменить объём памяти, доступный PHP.
Директива max_execution_time определяет, сколько секунд может длиться процесс PHP:
Отредактировав файл php.ini, сохраните изменения и закройте текстовый редактор.
Перезапустите веб-сервер, чтобы обновить настройки.
sudo service apache2 restart
Теперь создайте новую страницу info.php, чтобы убедиться, что настройки были приняты программой.
Примечание: Не забудьте удалить страницу после проверки.
Заключение
Многим приложениям на основе PHP не подходят стандартные параметры PHP. С помощью функции phpinfo конфигурации можно отладить согласно требованиям того или иного приложения.
How to install and configure PHP
PHP is a general-purpose scripting language well-suited for Web development since PHP scripts can be embedded into HTML. This guide explains how to install and configure PHP in an Ubuntu System with Apache2 and MySQL.
Prerequisites
Before installing PHP you should install Apache (or a preferred web server) and a database service such as MySQL.
- To install the Apache package, please refer to our Apache guide.
- To install and configure a MySQL database service, refer to our MySQL guide.
Install PHP
PHP is available on Ubuntu Linux, but unlike Python (which comes pre-installed), must be manually installed.
To install PHP – and the Apache PHP module – you can enter the following command into a terminal prompt:
sudo apt install php libapache2-mod-php
Install optional packages
The following packages are optional, and can be installed if you need them for your setup.
- PHP-CLI
You can run PHP scripts via the Command Line Interface (CLI). To do this, you must first install the php-cli package. You can install it by running the following command:
sudo apt install php-mysql
sudo apt install php-pgsql
Configure PHP
If you have installed the libapache2-mod-php or php-cgi packages, you can run PHP scripts from your web browser. If you have installed the php-cli package, you can run PHP scripts at a terminal prompt.
By default, when libapache2-mod-php is installed, the Apache2 web server is configured to run PHP scripts using this module. First, verify if the files /etc/apache2/mods-enabled/php8.*.conf and /etc/apache2/mods-enabled/php8.*.load exist. If they do not exist, you can enable the module using the a2enmod command.
Once you have installed the PHP-related packages and enabled the Apache PHP module, you should restart the Apache2 web server to run PHP scripts, by running the following command:
sudo systemctl restart apache2.service
Test your setup
To verify your installation, you can run the following PHP phpinfo script:
You can save the content in a file – phpinfo.php for example – and place it under the DocumentRoot directory of the Apache2 web server. Pointing your browser to http://hostname/phpinfo.php will display the values of various PHP configuration parameters.
Further reading
- For more in depth information see the php.net documentation.
- There are a plethora of books on PHP 7 and PHP 8. A good book from O’Reilly is Learning PHP, which includes an exploration of PHP 7’s enhancements to the language.
- Also, see the Apache MySQL PHP Ubuntu Wiki page for more information.
Настройка параметров 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 командой: