Установка PHP на ОС Debian
Операционные системы семейства UNIX – отличный вариант для размещения серверов. Преимущество заключается не только в бесплатности, но и в существовании массы программного обеспечения, подходящего для подобных задач. Создать веб-сайт на базе Debian можно без труда, используя в качестве веб-сервера Apache и подключив к нему интерпретатор PHP, базу данных MySQL. Это – основа, которой достаточно для большинства интернет-ресурсов.
Процесс установки
Прежде всего понадобится загрузить Apache. Без него сайт работать не будет: файлы, которые планируются добавить на будущий ресурс, просто окажутся недоступны где-либо за пределами самого компьютера или сервера. В Debian скачивание производится с более сотни разных площадок по принципу безвозмездного обмена файлами, проводимого с платформ разработчиков операционной системы и энтузиастов по всему миру, поэтому все операции по загрузке распространённого софта проводятся посредством командной строки.
Чтобы увидеть консольный интерфейс, следует подключиться с помощью PuTTY или любой подобной программы. Если же помимо терминала предусмотрена и графика, следует кликнуть по иконке командной строки в меню установленного программного обеспечения.
- Сперва обновите все компоненты системы. Для этого введите sudo apt update. Важно отметить, что начинать команды с sudo следует только если работа ведётся не от root-аккаунта. В противном случае можно не вставлять эту конструкцию в начало запросов. Если же действия выполняются с помощью обычной учётной записи, после ввода sudo понадобится разово указать пароль.
- Загрузите последнюю версию Apache, введя sudo apt install apache2.Понадобится подтвердить действия, введя букву Y (что означает yes). Для отмены, соответственно, следует указать n.
- Сразу после завершения установки запустится процесс Apache, что произойдёт в «тихом», незаметном режиме. Убедиться в том, что софт работает, можно командой sudo systemctl status apache2. На экране возникнет список сведений о программе. Если среди информации будет и надпись active (running), выделенная зелёным цветом, то можно считать первичную настройку веб-сервера завершённой – он доступен в Сети. Через systemctl можно подавать и другие запросы. Например: start, restart, stop, reload. Они подходят не только для Apache. Может показаться полезным sudo systemctl disable apache2, отключающий автоматический запуск Apache вместе с системой. Противоположное действие: enable.
- Сервер будет работать, отображая пользователям интернета содержимое папки /var/www/html/. Тем не менее, выполнение PHP-скриптов будет недоступно, пока не закончится установка интерпретатора данного языка программирования. Как и Apache, эта программа тоже несложно скачивается: сперва введите sudo apt install php8.0-common, а потом, когда предыдущий этап будет завершён, укажите php8.0-{curl,intl,mysql,readline,xml,mbstring}и sudo apt install php8.0-cli. Примерно таким же образом производится и обновление текущей версии PHP до последней, которой на момент написания текста была восьмая спецификация.
- Опционально можно загрузить MySQL. Это – база данных, которая используется множеством CMS. В PHPвзаимодействие с нею производится посредством класса mysqli. Здесь тоже всё происходит без сложностей: достаточно ввести в терминале sudo apt install mysql-server. Он запустится автоматически по окончании процедуры.
Обновление
Обновить PHP и Apache можно вместе со всеми программами, используя sudo apt update, либо по отдельности, сделав то же самое, что и при начальной установке. Если новых версий нет, система уведомит об этом и не переустановит приложения, поэтому не стоит волноваться по этому поводу. К тому же, при обновлении никакие данные, оставленные программами и пригодные для использования в дальнейшем, не сбрасываются.
В редких случаях требуется проделать что-то большее, чем просто ввести одну команду. В основном это касается случаев перехода с очень старой версии PHP на новую и подробно рассмотрено на официальной сайте языка программирования.
Тестирование
Проверить, работает ли PHP, очень просто: достаточно написать что-то вроде распространённого у программистов «HelloWorld» и проверить, будет ли выведен этот текст посредством интерпретатора. Убедиться в правильном взаимодействии PHP и MySQL позволит выполнение какого-либо скрипта, связанного с базами данных.
<?php
$string = «Hello, world!»;
print $string;
Если в результате отобразится только надпись «Hello, world!», то PHP интерпретируется корректно.
Узнать текущий статус программы можно посредством systemctlstatus имя_процесса.
Предупреждения
Настоятельно не рекомендуется запускать Apache от root-пользователя, особенно если используется MySQL. Это существенно понижает уровень безопасности системы, давая хакерам возможность получить контроль надо всем сервером, и проводить действия, которые, вероятно, запрещены хостинг-провайдером и приведут к блокировке аккаунта. Нередко после взлома проводятся следующие операции:
- брут: подбор паролей и логинов к чему-либо;
- DDoS-атаки (в качестве части одной большой сети);
- размещение фишинговых, мошеннических веб-сайтов;
- майнинг криптовалюты;
- перепродажа;
- создание прокси и VPN.
Все эти пункты запрещены большинством компаний, поэтому важно постараться избежать блокировок, не забывая о безопасности сервера. Ещё один возможный сценарий: взлом базы данных с информацией о пользователях, что приведёт к потере доверия к конкретному веб-сайту у аудитории пользователей, когда утечка подтвердится.