Чтобы собрать Apache2 с модулем mod_php из исходного кода на Alpine Linux, вам нужно будет выполнить несколько шагов. Alpine Linux использует менеджер пакетов `apk`, который значительно облегчает установку пакетов. Однако для сборки из исходного кода мы будем использовать команду `abuild`, предоставляемую Alpine, чтобы собрать оба пакета из их APKBUILD скриптов.
Вот шаги, которые вам нужно выполнить:
### Установка инструментов для сборки
1. Установка зависимостей и инструментов для сборки:
```sh
apk add alpine-sdk
```
Это установит большинство необходимых инструментов для сборки пакетов, таких как `gcc`, `make` и другие.
### Создание вашего собственного форка для сборки пакетов
2. Добавьте себя в список `sudoers`, чтобы иметь возможность выполнять команды с правами суперпользователя:
```sh
echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee -a /etc/sudoers
```
3. Настройте `abuild`:
```sh
abuild-keygen -a -i
```
### Сборка Apache2 и PHP
4. Получите APKBUILD скрипты для Apache2 и PHP. Давайте начнем с Apache2:
```sh
cd ~
git clone https://git.alpinelinux.org/aports
cd aports/main/apache2
```
5. После этого можно изменить APKBUILD, если требуется (например, включить дополнительные флаги или настройки).
6. Соберите пакет Apache2:
```sh
abuild -r
```
7. Повторите те же шаги для PHP. Первоначально вам нужно найти пакет `php7` или `php8` в репозитории `aports` и выполнить для него `abuild`. Затем активируйте модуль `mod_php` в Apache, убедившись, что он включен в конфигурацию сборки PHP.
```sh
cd ~/aports/community/php7 # Или php8, проверьте текущую версию
# Можно отредактировать APKBUILD здесь
abuild -r
```
### Установка собранных пакетов
8. После успешной сборки пакеты будут находиться в каталоге `~/packages`. Вы можете установить их с помощью `apk`:
```sh
sudo apk add ~/packages/main/x86_64/apache2-*.apk
sudo apk add ~/packages/community/x86_64/php7-*.apk # или php8
```
### Настройка Apache2 и PHP
9. После установки вы можете включить и настроить Apache2, редактируя конфигурационные файлы, расположенные в `/etc/apache2/httpd.conf` или `/etc/apache2/conf.d`.
10. Убедитесь, что модуль mod_php включен, и конфигурация Apache2 настроена на обработку файлов `.php` через mod_php.
### Запуск Apache2
11. Запустите Apache:
```sh
sudo rc-service apache2 start
```
12. Добавьте `apache2` в автозагрузку, если хотите, чтобы он запускался при старте системы:
```sh
sudo rc-update add apache2
```
Эти шаги предполагают, что вы уже знакомы с системой пакетов Alpine Linux и процессом сборки. Если вы новичок в Alpine или сборке пакетов, рекоменду