В каталоге `mods-available/` хранятся все доступные модули для веб-сервера Apache2. Модули (modules) - это расширения, которые добавляют дополнительные функции и возможности в веб-сервер Apache2. Вот некоторые из наиболее распространенных модулей и их назначение: ### Основные модули Apache2 1. **mod_alias** - Назначение: Позволяет управлять URL-адресами, создавая псевдонимы (алиасы) для файлов и директорий. - Пример: ```apache Alias /images /var/www/images ``` 2. **mod_auth_basic** - Назначение: Предоставляет базовую HTTP-аутентификацию. - Пример: ```apache <Directory "/var/www/html"> AuthType Basic AuthName "Restricted Area" AuthUserFile /etc/apache2/.htpasswd Require valid-user </Directory> ``` 3. **mod_ssl** - Назначение: Обеспечивает поддержку SSL/TLS для защищенных соединений HTTPS. - Пример: ```apache <VirtualHost *:443> SSLEngine on SSLCertificateFile /path/to/cert.pem SSLCertificateKeyFile /path/to/key.pem </VirtualHost> ``` 4. **mod_rewrite** - Назначение: Позволяет изменять URL-адреса запросов с помощью правил переписывания. - Пример: ```apache RewriteEngine On RewriteRule ^/oldpath(.*)$ /newpath$1 [R=301,L] ``` 5. **mod_headers** - Назначение: Позволяет добавлять, изменять или удалять HTTP-заголовки. - Пример: ```apache Header set X-Frame-Options "DENY" ``` 6. **mod_proxy** - Назначение: Позволяет использовать Apache в качестве прокси-сервера. - Пример: ```apache <VirtualHost *:80> ProxyPass /app http://localhost:8080/app ProxyPassReverse /app http://localhost:8080/app </VirtualHost> ``` 7. **mod_deflate** - Назначение: Сжимает содержимое ответа с использованием gzip для уменьшения объема передаваемых данных. - Пример: ```apache <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml </IfModule> ``` ### Дополнительные модули 1. **mod_cache** - Назначение: Обеспечивает кеширование контента для улучшения производительности. - Пример: ```apache CacheEnable disk / CacheRoot "/var/cache/apache2" ``` 2. **mod_security** - Назначение: Предоставляет функции для улучшения безопасности веб-приложений, включая WAF (Web Application Firewall). - Пример: ```apache <IfModule mod_security2.c> SecRuleEngine On </IfModule> ``` 3. **mod_autoindex** - Назначение: Автоматически создает индексный список файлов в каталоге. - Пример: ```apache <Directory "/var/www/html"> Options Indexes </Directory> ``` ### Управление модулями Для активации и деактивации модулей используются утилиты `a2enmod` и `a2dismod`: - **Активировать модуль**: ```sh sudo a2enmod rewrite ``` - **Деактивировать модуль**: ```sh sudo a2dismod rewrite ``` После активации или деактивации модуля нужно перезапустить Apache2 для применения изменений: ```sh sudo systemctl restart apache2 ``` Эти модули расширяют функциональные возможности Apache2, позволяя адаптировать веб-сервер под различные нужды и требования.