Введение
В этом руководстве мы рассмотрим шаги, необходимые для установки PHP 7.4
по умолчанию из дистрибутива Ubuntu 20.04 LTS Focal Fossa и его интеграции с Nginx и Apache.
Большинство популярных фреймворков и приложений PHP, включая WordPress, Laravel, Drupal и Nextcloud, совместимы с PHP 7.4
.
Предпосылки
Прежде чем приступить к этому руководству, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo.
Если вы хотите установить PHP на удаленный сервер, продолжайте чтение, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Установите PHP 7.4 для Apache
Если вы используете Apache в качестве веб-сервера для установки PHP и модуля Apache PHP, выполните следующую команду:
sudo apt install php libapache2-mod-php
После установки пакетов перезапустите службу Apache:
sudo systemctl restart apache2
Установите PHP 7.4 для Nginx
В отличие от Apache, Nginx не имеет встроенной поддержки обработки файлов PHP, поэтому вам необходимо установить отдельное приложение, такое как PHP FPM («менеджер процессов fastCGI»), которое будет обрабатывать файлы PHP.
Чтобы установить пакеты PHP и PHP FPM, выполните следующую команду:
sudo apt install php-fpm
После установки пакетов вы можете проверить статус службы PHP FPM с помощью:
systemctl status php7.4-fpm
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-05-06 16:34:04 CEST; 7s ago
Docs: man:php-fpm7.4(8)
Process: 28850 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/7.4/fpm/pool.d/www.conf 74 (code=exited, status=0/SUCCESS)
Main PID: 28839 (php-fpm7.4)
Status: "Ready to handle connections"
Tasks: 3 (limit: 2286)
Memory: 10.2M
CGroup: /system.slice/php7.4-fpm.service
├─28839 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
├─28848 php-fpm: pool www
└─28849 php-fpm: pool www
Теперь вы можете отредактировать блок сервера Nginx и добавить следующие строки, чтобы Nginx мог обрабатывать файлы PHP с указанием установленной версии, в данном случае 7.4
:
server {
#... il resto del codice
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
}
Перед перезапуском Nginx проверьте правильность конфигурации:
sudo nginx -t
Не забудьте перезапустить службу Nginx, чтобы новая конфигурация вступила в силу:
sudo systemctl restart nginx
Установите расширения PHP
Чтобы расширить базовую функциональность PHP, вы можете установить некоторые дополнительные расширения. Расширения PHP доступны в виде пакетов и могут быть легко установлены с помощью:
sudo apt install php-[extname]
Например, если вы хотите установить расширения MySQL и GD PHP, выполните следующую команду:
sudo apt install php-mysql php-gd
После установки нового расширения PHP не забудьте перезапустить Apache или службу PHP FPM, в зависимости от вашей конфигурации.
Тест обработки PHP
Чтобы проверить, правильно ли настроен ваш веб-сервер для обработки PHP, создайте новый файл с именем info.php
внутри каталога /var/www/html
со следующим кодом:
sudo nano /var/www/html/info.php
<?php phpinfo(); ?>
Сохраните файл, откройте браузер по вашему выбору и посетите http://TUO_DOMINO_O_IP/info.php
Функция phpinfo
распечатает информацию о конфигурации PHP.
Управление PHP
Чтобы проверить версию PHP, установленную в вашей системе, введите следующую команду:
php -v
PHP 7.4.3 (cli) (built: May 5 2020 12:14:27) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
Предполагая, что вы установили разные версии PHP, вы можете изменить используемую версию из терминала с помощью следующей команды:
sudo update-alternatives --set php /usr/bin/php7.x
Чтобы изменить версию, которую использует Apache, используйте следующий пример команды, которая отключает php 7.2
и включает php 7.4
и перезапускает Apache:
sudo a2dismod php7.2; sudo a2enmod php7.4; sudo service apache2 restart
Чтобы изменить версию, используемую для Nginx, вам нужно открыть файл конфигурации и изменить версию, как показано в предыдущих абзацах.
Вывод
PHP был успешно установлен на сервере Ubuntu 20.04 LTS Focal Fossa. Вы также можете прочитать, как установить и настроить проект PHP с помощью Composer.