4,5K подписчиков

Установка и смена версий PHP: подробная инструкция

242 прочитали
📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.
📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать

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

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

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

Установка PHP на сервер Ubuntu

Есть два способа установки PHP: ручная и через панель управления ISPmanager. Выбирайте удобный для вас способ и следуйте инструкциям ниже.

1 способ: установка PHP вручную

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

  1. Обновление списка пакетов: sudo apt update
  2. Установка необходимых зависимостей:

sudo apt install build-essential libssl-dev

3. На официальном сайте есть скрипт установки, который нужно установить, указав номер нужной версии:

curl -L -O https://www.php.net/distributions/php-<version>.tar.gz

4. После скачивания файла его необходимо распаковать при помощи команды:

tar xzf php-<version>.tar.gz (обязательно указав номер версии, которую вы загрузили).

5. Затем нужно перейти в каталог, куда установили язык. Для перехода используйте команду:

cd php-<version>

6. Остается настроить установочный файл и собрать PHP, выполнив команды:

./configure

make

7. Финальный этап, а именно инсталляция PHP на сервер:

sudo make install

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

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

В случае с Apache выполните следующее:

sudo service apache2 restart

2 способ: Установка через панель управления ISPmanager

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

Если вы пишете на PHP, то при помощи одной панели вы сможете устанавливать разные версии PHP и управлять ими. Чтобы это сделать, для начала необходимо войти в панель управления от имени администратора. Затем следуйте инструкции:

  1. На главной панели есть раздел «Конфигурация ПО», в который необходимо перейти.
  2. В этом разделе нужно выбрать и установить желаемую версию ПО.
  3. В завершении необходимо перезагрузить сервер.
📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-2

Как определить версию PHP, на которой работает сайт

Возможно, вы забыли версию, на которой работает сайт. Узнать версию можно тремя способами: через создание скрипта phpinfo(), через ISPmanager или воспользовавшись терминалом. Рассмотрим каждый способ.

1 способ: через phpinfo()

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

1. Для создания файла выполните команду:

<?php phpinfo();

2. Для сохранения файла используйте корневую директорию веб-сайта. В корневой директории есть файл с названием index.html или index.php).

3. Затем нужно открыть файл. Для этого в адресной строке браузера необходимо ввести следующее:

http://адрес_вашего_сайта/phpinfo.php.

4. На экране должна появится страница с детальной информацией про PHP, в том числе вы сможете узнать текущую версию.

📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-3

2 способ: через терминал

1. Используя терминал, запустите команду -v:

php -v

2. После запуска команды вся информация должна вывестись на экран в таком виде:

📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-4

3 способ: через панель управления

И последний способ, который выполняется в два шага. Чтобы узнать версию через ISPmanager, необходимо зайти в настройки сайта. Для этого на главной панели кликните на раздел «Сайты» и вы увидите раздел с настройками сайта.

Текущая версия нашего сайта продемонстрирована на экране.

📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-5

Как менять версии PHP

1 способ: через ISPmanager

Как мы уже говорили, при помощи ISPmanager можно управлять различными расширениями PHP. Но как всегда есть один нюанс: вы можете отключить или включить только те версии, которые установлены на сервере. Если на сервере нет какой-либо версии PHP, то вы не сможете на нее переключиться.

Теперь рассмотрим, как можно изменить одну версию на другую:

1. Через раздел «Сайты» зайдите в настройки сайта.

📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-6

2. В настройках будут отображаться доступные версии. В нашем случае можно переключиться на эти:

📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать Большинство веб-приложений разработано при помощи скриптового языка программирования PHP.-7

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

2 способ: через командную строку

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

1. Для начала необходимо проверить, какие версии установлены. Для получения списка пакетов используется команда:

dpkg --list | grep php

2. После того, как провели проверку, нужно выполнить установку специального пакета, при помощи которого в дальнейшем можно менять версии: sudo apt-get install -y php-switch

3. Далее можно переключаться между версиями при помощи одной команды, которая приведена ниже. Введите команду, указав нужную вам версию:

php-switch 7.4

4. Чтобы проверить текущую версию, в командной строке запустите команду:

php -v

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

Как устранить проблемы с обработкой PHP-скриптов

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

Теперь покажем, как можно выявить проблемы и как их устранить.

  • Проверка статуса сервиса PHP

Нам нужно узнать, сервис запущен или нет, для этого необходимо запустить команду с указанием текущей версии php:

sudo service php7.4-fpm status

После выполнения этой команды на экране появится информация о статусе сервиса. Когда он запущен, то на экране будет active (running).

Если у вас другой статус, то сервис необходимо запустить следующим образом:

sudo service php7.4-fpm start

  • Проверка лог-файлов

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

Запустите:

tail /var/log/php7.4-fpm.log

  • Проверка настройки скрипта

Чтобы ошибки скриптов отображались сразу на странице сайта, необходимо проверить настройку опции display_errors. Для выполнения проверки нужен текстовый редактор.

В нем необходимо открыть файл с расширением php.ini

Значение опции display_errors должно быть on

  • Проверка ошибок в скриптах

Чтобы проверить и найти ошибки в скриптах, также необходимо воспользоваться текстовым редактором. Возможно вы найдете синтаксические ошибки в коде, которые привели к нарушению работоспособности PHP-скриптов.

  • Проверка ограничений в конфигурации веб-сервера

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

  • Проверка работоспособности скрипта

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

В завершении

Используя инструкции выше, у вас получится с первого раза установить PHP на свой сервер. А также управлять установленными версиями при помощи командной строки или панели управления ISPmanager. Помимо этой панели, для настройки PHP можно использовать панели Fastpanel и ISPConfig. Инструкции по их использованию в нашей Базе знаний.

Кстати, в официальном канале Timeweb Cloud собрали комьюнити из специалистов, которые говорят про IT-тренды, делятся полезными инструкциями и даже приглашают к себе работать.💥