- LAMP, Linux Apache MySQL PHP
- MySQL
- apache2
- Настройка каталогов пользователей для веб-сервера Apache
- Часть "P"
- Конфигурирование
- Файл конфигурации Apache2: /etc/apache2/apache2.conf
- Проверка PHP
- phpMyAdmin
- PHP: /etc/php5/apache2/php.ini
- MySQL : /etc/mysql/my.cnf
- Смотри также
- Установка PHP в Debian
- Установка PHP в Debian 11
- Установка PHP 7.4
- Установка PHP 8.0 и 8.1
- Настройка PHP для веб-сервера Apache
- Выбор версии PHP
- Выводы
LAMP, Linux Apache MySQL PHP
Перед началом установки убедитесь, что ваш дистрибутив находится в актуальном состоянии (обновлен до последней версии)( ‘#’ означает, что вы должны выполнять эти команды с правами администратора):
# aptitude update && aptitude upgrade
MySQL
Затем установите mysql используя следующую команду:
# aptitude install mysql-server mysql-client
Сразу после установки сервера MySQL, вы должны изменить пароль суперпользователя сервера MySQL:
* Этот шаг не является необходимым для дистрибутива Lenny, так как Вам будет предложено ввести пароль суперпользователя MySQL во время установки
# /usr/bin/mysqladmin -u root password 'введите-свой-новый-пароль-здесь'
Вы никогда не должны использовать ваш аккаунт и пароль суперпользователя при запуске баз данных. Аккаунт root является привилегированной учетной записью, которая используется только для административных процедур. Вам необходимо создать отдельную учетную запись пользователя для подключения к базам данных MySQL из скриптов PHP. Вы можете добавлять пользователей баз данных MySQL с помощью панели управления PHPMyAdmin, в которой легко создавать базы данных или назначать разрешения для пользователей.
apache2
Веб-сервер может быть установлен следующим образом:
# aptitude install apache2 apache2-doc
Настройка каталогов пользователей для веб-сервера Apache
Настройте модуль Apache userdir /etc/apache2/mods-enabled/userdir.conf следующим образом:
UserDir public_html UserDir disabled root AllowOverride All Options MultiViews Indexes SymLinksIfOwnerMatch Order allow,deny Allow from all Order deny,allow Deny from all
Создайте директорию обычного пользователя (не через root аккаунт):
$mkdir /home/$USER/public_html
Измените группу от имени root (подставив свое имя пользователя) и перезапустите Веб-сервер:
# chgrp www-data /home//public_html # service apache2 restart
В случае возникновения ошибки Forbidden при доступе к домашней директории /home/username через Apache, проверьте имеются ли разрешения на директорию типа drwxr-xr-x. Если разрешения некорректны, исправьте их на корректные:
Для обработки PHP скриптов (PHP должен быть установлен в соответствии с инструкциями) проверьте, что правильно сконфигурирован:
SetHandler application/x-httpd-php SetHandler application/x-httpd-php-source # To re-enable php in user directories comment the following lines # (fromto .) Do NOT set it to On as it # prevents .htaccess files from disabling it. ## # php_admin_value engine Off # #
Поместите некоторое web содержимое в директорию ~/public_html и посмотрите результат через браузер по адресу http://localhost/~username
Часть "P"
Установить подмножество PHP из LAMP в Debian достаточно просто, просто введите это от root в консоли (# указывает на ввод команд от имени суперпользователя)
# aptitude install php5 php5-mysql libapache2-mod-php5
Если вы предпочитаете Perl, вы можете его установить:
# aptitude install perl libapache2-mod-perl2
Если вы предпочитаете Python, вы можете его установить:
# aptitude install python libapache2-mod-python
Конфигурирование
Файл конфигурации Apache2: /etc/apache2/apache2.conf
Вы можете редактировать этот файл при необходимости, но для большинства простых приложений, это не требуется, поскольку большая часть настроек в настоящее время осуществляется при помощи conf.d.
Проверка PHP
Для проверки интерфейса PHP, отредактируйте файл /var/www/apache2-default/test.php:
# nano /var/www/apache2-default/test.php
После этого откройте в браузере http:///apache2-default/test.php для начала работы.
phpMyAdmin
Вероятно, вы также захотите установить PHPMyAdmin для удобства настройки:
# aptitude install phpmyadmin
Чтобы получить доступ к ?PhpMyAdmin на Вашем сайте (например http://example.com/phpmyadmin/ ) все, что вам нужно сделать, это включить следующую строку в /etc/apache2/apache2.conf (необходимо только до версии Squeeze, начиная с версии 6,0 это будет включено в сценарий установки пакета /etc/apache2/conf.d/phpmyadmin.conf -> ../../phpmyadmin/apache.conf автоматически ):
Include /etc/phpmyadmin/apache.conf
Перейдите по адресу http:///phpmyadmin/ для начала использования. (Используйте IP или имя вашего PC/сервера вместо (IP локального хоста всегда 127.0.0.1).)
PHP: /etc/php5/apache2/php.ini
Обычной проблемой конфигурации PHP является активация MySQL. Просто отредактируйте файл и раскомментируйте следующую строку (Совет: ищите MySQL)
Примечание: В этом нет необходимости так как в настоящее время используется conf.d
MySQL : /etc/mysql/my.cnf
Вы можете найти пример конфигурации в /usr/share/doc/mysql-server/examples
Смотри также
Установка PHP в Debian
PHP - очень популярный скриптовый язык программирования с открытым исходным кодом, который в основном используется для разработки динамических веб-сайтов и веб-приложений. PHP расшифровывается как Hypertext Processor что в переводе означает препроцессор гипертекста. Код PHP выполняется на стороне сервера и может находиться как в отдельных файлах с расширением .php, так и быть встроенным непосредственно в HTML.
На данный момент официально поддерживается 2 версии PHP - это 7.4 и 8.0. В данной статье будет рассмотрена установка PHP на Debian 11. Также будет затронута установка расширения для Apache, а также рассказано как изменить версию по умолчанию.
Установка PHP в Debian 11
В данной статье речь конкретно пойдёт о PHP 7.4 и PHP 8. Версия PHP 7.4 уже присутствует в официальных репозиториях Debian. Версия 8.0 отсутствует в официальных репозиториях и её необходимо устанавливать из сторонних репозиториев (будет использоваться репозиторий Sury).
Установка PHP 7.4
Как уже было сказано ранее PHP 7.4 уже присутствует в официальных репозиториях. Для установки сначала необходимо обновить индекс пакетов при помощи команды:
Далее необходимо установить PHP выполнив команду:
При выполнении вышеуказанной команды помимо самого интерпретатора PHP автоматически будут установлены такие пакеты как php7.4-json (пакет для работы с JSON), libapache2-mod-php7.4 (пакет для работы с веб-сервером Apache), php7.4-cli (командный интерпретатор PHP) а также автоматически будет установлен веб-сервер Apache (пакеты apache2, apache2-data, apache2-utils).
После того как все пакеты будут установлены в системе можно проверить версию PHP при помощи команды:
Также проверить что PHP 7.4 установилась успешно можно при помощи команды:
Если в выводе команды будет отображена версия PHP это означает что PHP успешно установлен в системе.
Установка PHP 8.0 и 8.1
PHP 8 отсутствует в официальных репозиториях Debian. Для установки данной версии необходимо подключить репозиторий под именем Sury - репозиторий созданный одним из разработчиков Debian содержащий пакеты, которые отсутствуют в официальных релизах Debian.
Для начала необходимо установить необходимые пакеты для работы с HTTPS репозиториями для этого необходимо выполнить команду:
sudo apt install -y lsb-release ca-certificates apt-transport-https software-properties-common gnupg2
Далее необходимо подключить репозиторий Sury. Для этого необходимо выполнить команду:
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/sury-php.list
После этого необходимо скачать ключ безопасности для идентификации репозитория при помощи утилиты wget (при её отсутствия необходимо установить wgetзаранее) выполнив команду:
wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add -
После этого необходимо обновить индекс пакетов:
В списках репозиториев можно увидеть успешно добавленный репозиторий Sury. В репозитории Sury присутствует 2 версии PHP 8 - 8.0 и 8.1. Можно выбрать любую из них или установить сразу обе. В качестве примера будет установлена версия 8.1. Для этого необходимо выполнить команду:
Для установки версии 8.0 команда будет выглядеть следующим образом:
Так же, как и при установке PHP версии 7.4 автоматически будут установлены дополнительные пакеты. Для каждой версии PHP устанавливаются свои пакеты. Это означает что, если в системе уже присутствует, например пакет php7.4-cli то для версии PHP 8.1 будет установлен пакет php8.1-cli и т.д. Для проверки корректной установки версии PHP 8.1 необходимо выполнить команду:
Или можно выполнить команду:
Настройка PHP для веб-сервера Apache
Для работы PHP Apache Debian необходимо чтобы в системе присутствовал сам веб-север Apache (пакет apache2) и расширение libapache2-mod-php8.1 (для всех остальных версий PHP название пакета будет одинаковым, однако в конце необходимо указать необходимую версию PHP - 7.4, 8.0. Например libapache2-mod-php7.4, libapache2-mod-php8.0).
Веб сервер Apache и расширение libapache2-mod-php устанавливаются автоматически при установке пакета PHP. В противном случае пакет libapache2-mod-php можно установить, вручную выполнив одну из нижеперечисленных команд (в зависимости от требуемой версии PHP или можно установить сразу для всех версий PHP присутствующих в системе):
sudo apt -y install libapache2-mod-php7.4
sudo apt -y install libapache2-mod-php8.0
sudo apt -y install libapache2-mod-php8.1
Перед использованием PHP необходимо включить соответствующий модуль в Apache. Для включения модуля php7.4 необходимо выполнить команду:
Если в выводе команды будет строка Module already enabled, это означает что модуль уже включен. Чтобы выключить модуль необходимо выполнить команду:
Далее необходимо перезапустить apache при помощи команды:
sudo systemctl restart apache2
Если необходимо включить модуль для другой версии php, например 8.1 сначала необходимо выключить модуль для другой версии (команда a2dismod) и только потом включить модуль для нужной версии. Для включения модуля php версии 8.1 необходимо выполнить команду:
После включения модуля также необходимо перезапустить apache при помощи команды:
sudo systemctl restart apache2
Далее для проверки работы Apache и PHP необходимо создать файл с расширением .php в директории хранения сайтов - /var/www/html/ вписав туда команду phpinfo() которая выведет информацию о текущей конфигурации PHP. Для этого необходимо выполнить команду ниже предварительно перейти под учетную запись пользователя root:
Далее необходимо перезапустить веб-сервер Apache:
sudo systemctl restart apache2
После перезагрузки необходимо перейти по адресу localhost/info.php в браузере. Если вывод страницы будет как на скриншоте ниже, то PHP успешно интегрирован c Apache:
На этом настройки php debian с Apache завершена.
Выбор версии PHP
Если в системе присутствует более чем одной версии PHP можно выбрать версию PHP которая будет использоваться по умолчанию. Для того чтобы выбрать необходимую версию PHP сначала можно отобразить список всех версий PHP установленных в системе выполнив команду:
update-alternatives --list php
Для установки необходимой версии по умолчанию необходимо выполнить команду:
sudo update-alternatives --set php /usr/bin/php8.1
Вместо php8.1 можно поставить необходимую версию PHP (7.4, 8.0 и тд).
Выводы
В этой статье была рассмотрено как установить PHP Debian 11. Была рассмотрена установка двух версий PHP - 7.4 и 8 а также была описана интеграция PHP с веб-сервером Apachе и выбор необходимой версии PHP по умолчанию. Теперь вы знаете, как установить не только сам интерпретатор языка PHP, но и другие поддерживаемые версии. Как видите, это очень просто, и вы можете получить нужную версию PHP буквально в несколько кликов. Надеюсь, эта информация была вам полезной.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.