📜 Читайте также: Миграция базы данных: для чего нужна, примеры использования и как сделать
Большинство веб-приложений разработано при помощи скриптового языка программирования PHP. Он относится к группе серверных языков. То есть скрипты работают и интерпретируются по запросу клиента на стороне сервера. Пользователь в ответ на свой запрос получает сгенерированную HTML-страницу, которая выводится в браузере. При этом сам код PHP не попадает в браузер. Таким образом, сайты создаются исключительно по запросу клиента, а не хранятся на сервере постоянно.
Периодически случаются релизы новых версий PHP. Разработчики отмечают, что с каждой версией код становится быстрее, надежнее и гибче. А писать его гораздо приятнее. Это позволяет создавать современные веб-приложения. Однако в этом всем есть один нюанс: не каждый сайт может перейти на новую версию, хоть зачастую это необходимо сделать, чтобы внедрить новые функции, исправить ошибки или повысить уровень безопасности.
В этом руководстве вы узнаете все: с чего начинать работу, как выполнить установку PHP на сервер, как переключаться между версиями PHP и находить ошибки в скриптах.
Установка PHP на сервер Ubuntu
Есть два способа установки PHP: ручная и через панель управления ISPmanager. Выбирайте удобный для вас способ и следуйте инструкциям ниже.
1 способ: установка PHP вручную
Чтобы начать установку, необходимо подключиться к серверу по защищенному протоколу SSH и выполнить команды в следующей последовательности:
- Обновление списка пакетов: sudo apt update
- Установка необходимых зависимостей:
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 и управлять ими. Чтобы это сделать, для начала необходимо войти в панель управления от имени администратора. Затем следуйте инструкции:
- На главной панели есть раздел «Конфигурация ПО», в который необходимо перейти.
- В этом разделе нужно выбрать и установить желаемую версию ПО.
- В завершении необходимо перезагрузить сервер.
Как определить версию PHP, на которой работает сайт
Возможно, вы забыли версию, на которой работает сайт. Узнать версию можно тремя способами: через создание скрипта phpinfo(), через ISPmanager или воспользовавшись терминалом. Рассмотрим каждый способ.
1 способ: через phpinfo()
Чтобы получить развернутую информацию о конфигурации сервера и PHP, необходимо создать файл c phpinfo.php. После того, как вы узнаете текущую версию, этот файл рекомендуется удалить. Поскольку в нем содержится много информации, которой могут воспользоваться злоумышленники.
1. Для создания файла выполните команду:
<?php phpinfo();
2. Для сохранения файла используйте корневую директорию веб-сайта. В корневой директории есть файл с названием index.html или index.php).
3. Затем нужно открыть файл. Для этого в адресной строке браузера необходимо ввести следующее:
http://адрес_вашего_сайта/phpinfo.php.
4. На экране должна появится страница с детальной информацией про PHP, в том числе вы сможете узнать текущую версию.
2 способ: через терминал
1. Используя терминал, запустите команду -v:
php -v
2. После запуска команды вся информация должна вывестись на экран в таком виде:
3 способ: через панель управления
И последний способ, который выполняется в два шага. Чтобы узнать версию через ISPmanager, необходимо зайти в настройки сайта. Для этого на главной панели кликните на раздел «Сайты» и вы увидите раздел с настройками сайта.
Текущая версия нашего сайта продемонстрирована на экране.
Как менять версии PHP
1 способ: через ISPmanager
Как мы уже говорили, при помощи ISPmanager можно управлять различными расширениями PHP. Но как всегда есть один нюанс: вы можете отключить или включить только те версии, которые установлены на сервере. Если на сервере нет какой-либо версии PHP, то вы не сможете на нее переключиться.
Теперь рассмотрим, как можно изменить одну версию на другую:
1. Через раздел «Сайты» зайдите в настройки сайта.
2. В настройках будут отображаться доступные версии. В нашем случае можно переключиться на эти:
Предварительно необходимо проверить, чтобы версия, на которую вы хотели бы переключиться, поддерживалась скриптами и расширениями. Это связано с тем, что для работы некоторых скриптов и расширений необходима определенная версия 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-тренды, делятся полезными инструкциями и даже приглашают к себе работать.💥