Как установить Apache/PHP-FPM на Ubuntu 16.04 LTS

PHP-FPM (FastCGI Process Manager) представляет собой альтернативную реализацию PHP FastCGI. Он предлагает дополнительные возможности, такие как динамическое управление процессами, что может быть полезно для веб-сайтов. В этом руководстве мы рассмотрим, как установить Apache с PHP-FPM/FastCGI на Ubuntu 16.0Мы будем использовать PHP 7.2 и настраивать его с Apache с использованием PHP-FPM и FastCGI.

Перед началом установки убедитесь, что ваша система обновлена. Выполните следующие команды:

sudo apt update
sudo apt upgrade

После обновления установим необходимые пакеты. Используйте следующую команду для установки Apache и PHP-FPM:

sudo apt install apache2 libapache2-mod-fcgid php7.2 php7.2-fpm

После завершения установки убедитесь, что PHP-FPM запущен и работает:

sudo systemctl start php7.2-fpm
sudo systemctl enable php7.2-fpm

Теперь необходимо настроить Apache для работы с PHP-FPM. Откройте конфигурационный файл Apache:

sudo nano /etc/apache2/sites-available/000-default.conf

Добавьте следующие строки в секцию ``:


SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost/"

Сохраните изменения и закройте редактор. Затем перезагрузите Apache для применения изменений:

sudo systemctl restart apache2

Теперь вы можете проверить работу PHP-FPM. Создайте файл `info.php` в корневой директории веб-сервера:

echo "" | sudo tee /var/www/html/info.php

Откройте браузер и перейдите по адресу http://your_server_ip/info.php. Если вы видите информацию о PHP, значит, установка прошла успешно.

Не забудьте удалить файл `info.php`, чтобы избежать раскрытия конфиденциальной информации о конфигурации вашего сервера:

sudo rm /var/www/html/info.php

Теперь вы готовы использовать Apache с PHP-FPM на Ubuntu 16.04 LTS для своих веб-приложений.

Установка Apache

Установите веб-сервер Apache из официального репозитория. Откройте терминал на вашей системе или подключитесь к удаленному серверу по ssh. Выполните следующие команды для установки последней версии Apache и модуля FastCGI.

sudo apt update
sudo apt install apache2 libapache2-mod-fastcgi

После установки Apache убедитесь, что служба запущена и работает корректно. Вы можете использовать команду:

sudo systemctl status apache2

Это покажет статус сервера и его активность. Если сервер не запущен, вы можете активировать его с помощью:

sudo systemctl start apache2

Кроме того, чтобы Apache автоматически запускался при загрузке системы, выполните:

sudo systemctl enable apache2

Не забудьте проверить, открыты ли порты 80 и 443 в вашем файрволе, чтобы веб-сервер был доступен извне. Для управления файрволом используйте:

sudo ufw allow 'Apache'

Теперь вы можете открыть браузер и перейти по адресу http://localhost, чтобы убедиться, что сервер работает и отображает страницу приветствия Apache.

Для управления конфигурацией Apache файлы конфигурации находятся в каталоге /etc/apache2/. Основной конфигурационный файл — apache2.conf, а файлы виртуальных хостов находятся в /etc/apache2/sites-available/ и /etc/apache2/sites-enabled/. Рекомендуется создавать отдельные конфигурации для каждого сайта.

Если вы планируете использовать модули, такие как mod_rewrite или mod_ssl, вы можете включить их с помощью команд:

sudo a2enmod rewrite
sudo a2enmod ssl

Не забудьте перезапустить Apache после внесения изменений в конфигурацию:

sudo systemctl restart apache2

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

sudo apt install libapache2-mod-security2

Теперь вы готовы к работе с Apache и можете настраивать его под свои нужды!

Установка PHP

Для установки версий PHP мы воспользуемся PPA, который доступен здесь. Используйте следующие команды, чтобы добавить PPA в вашу систему.

sudo apt install python-software-properties sudo add-apt-repository ppa:ondrej/php

Теперь установите PHP 7.2, последнюю доступную на момент написания этого руководства версию. Просто выполните команды для установки необходимых пакетов PHP и PHP-FPM.

apt update sudo apt install php7.2 php7.2-fpm

После установки указанных пакетов служба php7.2-fpm будет запущена автоматически. Убедитесь в этом, введя следующую команду в терминале.

sudo systemctl status php7.2-fpm

Если служба активна, вы увидите сообщение активный (работает). Это означает, что PHP-FPM успешно запущен и готов к работе. Если вы столкнулись с проблемами, проверьте логи, которые обычно находятся в каталоге /var/log/php7.2-fpm.log.

Для настройки PHP вы можете редактировать файл конфигурации /etc/php/7.2/fpm/php.ini. Здесь вы можете изменить настройки, такие как максимальный размер загрузки файлов и время выполнения скриптов. После внесения изменений не забудьте перезапустить службу:

sudo systemctl restart php7.2-fpm

Также рекомендуется установить некоторые дополнительные расширения PHP, которые могут понадобиться для работы ваших приложений. Например, для работы с MySQL:

sudo apt install php7.2-mysql

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

apt-cache search php7.2

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

Конфигурация Apache

Теперь необходимо активировать несколько модулей, которые требуются для настройки работы нескольких версий PHP с Apache. Эти модули необходимы для интеграции PHP FPM и FastCGI с сервером Apache.

a2enmod actions fastcgi alias proxy_fcgi

Настроим Apache VirtualHost для работы с FPM/FastCGI. В этом руководстве мы будем использовать VirtualHost по умолчанию. Отредактируйте конфигурационный файл VirtualHost с помощью текстового редактора. Вы также можете создать новый VirtualHost в соответствии с вашими требованиями, не забудьте его активировать.

sudo vim /etc/apache2/sites-available/000-default.conf

Обновите конфигурацию следующим образом:

Добавьте следующие строки в файл VirtualHost для настройки PHP-FPM:



ServerName yourdomain.com
DocumentRoot /var/www/html

SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost"

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined


Замените yourdomain.com на ваш домен и php7.4-fpm.sock на сокет соответствующей версии PHP, которую вы используете.

После внесения изменений сохраните файл и выйдите из редактора. Затем проверьте конфигурацию Apache на наличие ошибок с помощью команды:

sudo apachectl configtest

Если ошибок не найдено, перезапустите Apache для применения изменений:

sudo systemctl restart apache2

Теперь ваш Apache настроен для работы с несколькими версиями PHP через FPM/FastCGI.

Настройка PHP-FPM

Конфигурация окружения для обработки PHP-запросов требует внимания к деталям и правильного выбора параметров. Эффективная работа системы во многом зависит от корректного указания значений, которые отвечают за производительность и безопасность веб-приложений.

Первым шагом является редактирование основного конфигурационного файла. Он обычно располагается по пути /etc/php/7.x/fpm/php-fpm.conf. Здесь можно задать общие настройки, такие как путь к сокету и уровень журналирования. Эти параметры позволяют настроить, как именно будет происходить взаимодействие между сервером и обработчиком PHP.

Следующий этап включает настройку пула процессов. Файл /etc/php/7.x/fpm/pool.d/www.conf содержит важные опции, такие как количество процессов, которые будут обрабатывать запросы. Настройки pm, pm.max_children, pm.start_servers и другие определяют, сколько процессов одновременно может быть активным, что критично для обработки большого объема трафика.

Не менее важно настроить параметры безопасности. Опции listen.owner, listen.group и listen.mode гарантируют, что доступ к сокету будет защищен от несанкционированного доступа. Также стоит учитывать настройки php_admin_value и php_value для установки специфических значений конфигурации PHP, таких как upload_max_filesize или post_max_size.

После внесения всех необходимых изменений следует перезапустить сервис, чтобы применить новые настройки. Это можно сделать с помощью команды systemctl restart php7.x-fpm. После этого важно проверить работу системы и убедиться, что все процессы функционируют корректно.

Тестирование установки

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

Первым шагом станет создание простого тестового файла, который поможет определить, правильно ли обработка PHP запросов настроена. Для этого откройте текстовый редактор и создайте файл с именем info.php в каталоге, который используется для хранения веб-страниц. Вставьте в него следующий код:

<?php
phpinfo();
?>

Сохраните изменения и перейдите в браузер, введя адрес вашего сервера с добавлением /info.php. Если всё настроено верно, вы увидите страницу с информацией о версии PHP и установленном окружении. Это означает, что система готова к работе с динамическими веб-приложениями.

Также стоит проверить доступность веб-сервера. Для этого откройте браузер и введите IP-адрес или доменное имя вашего сервера. Вы должны увидеть стандартную страницу приветствия, что свидетельствует о правильной настройке веб-сервера.

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

Настройка виртуальных хостов

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

Для начала потребуется создать файл конфигурации для каждого хоста. Эти файлы размещаются в специальной директории, и их имена обычно заканчиваются на .conf. Основные параметры, которые следует указать, включают ServerName, DocumentRoot и ErrorLog. Первое определяет доменное имя, второе указывает на директорию с файлами сайта, а третье – на место хранения логов ошибок.

После завершения редактирования конфигурационных файлов, необходимо активировать созданные хосты. Это делается с помощью специальной команды, которая включает в себя перезагрузку службы, чтобы изменения вступили в силу. Также важно проверить правильность настроек с помощью специальной утилиты, что поможет избежать потенциальных проблем при запуске.

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

Читайте также:  Лучшие практики для обеспечения безопасности системы Linux

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *