Установка и настройка Apache веб-сервера — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «= Установка и настройка Apache веб-сервера = == 1. Подготовка системы == * Войдите в систему под…») |
Admin (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 11: | Строка 11: | ||
1. Обновите список пакетов: | 1. Обновите список пакетов: | ||
− | < | + | <pre>sudo apt update</pre> |
− | sudo apt update | ||
− | </ | ||
2. Установите Apache веб-сервер: | 2. Установите Apache веб-сервер: | ||
− | < | + | <pre>sudo apt install apache2</pre> |
− | sudo apt install apache2 | ||
− | </ | ||
3. Запустите и включите автозапуск Apache: | 3. Запустите и включите автозапуск Apache: | ||
− | < | + | <pre>sudo systemctl start apache2</pre> |
− | sudo systemctl start apache2 | + | <pre>sudo systemctl enable apache2</pre> |
− | sudo systemctl enable apache2 | ||
− | </ | ||
=== Для CentOS/RHEL/Fedora === | === Для CentOS/RHEL/Fedora === | ||
1. Установите Apache: | 1. Установите Apache: | ||
− | < | + | <pre>sudo yum install httpd</pre> |
− | sudo yum install httpd | ||
− | </ | ||
# или для новых версий | # или для новых версий | ||
− | < | + | <pre>sudo dnf install httpd</pre> |
− | sudo dnf install httpd | ||
− | </ | ||
2. Запустите и включите автозапуск: | 2. Запустите и включите автозапуск: | ||
− | < | + | <pre>sudo systemctl start httpd</pre> |
− | sudo systemctl start httpd | + | <pre>sudo systemctl enable httpd</pre> |
− | sudo systemctl enable httpd | ||
− | </ | ||
== 3. Проверка установки == | == 3. Проверка установки == | ||
Строка 53: | Строка 41: | ||
1. Создайте директорию для вашего сайта: | 1. Создайте директорию для вашего сайта: | ||
− | < | + | <pre>sudo mkdir -p /var/www/example.com/public_html</pre> |
− | sudo mkdir -p /var/www/example.com/public_html | ||
− | </ | ||
2. Создайте файл конфигурации виртуального хоста: | 2. Создайте файл конфигурации виртуального хоста: | ||
− | < | + | <pre>sudo nano /etc/apache2/sites-available/example.com.conf</pre> |
− | sudo nano /etc/apache2/sites-available/example.com.conf | ||
− | </ | ||
3. Добавьте следующую конфигурацию: | 3. Добавьте следующую конфигурацию: | ||
− | < | + | <pre><VirtualHost *:80> |
− | <VirtualHost *:80> | ||
ServerName example.com | ServerName example.com | ||
ServerAlias www.example.com | ServerAlias www.example.com | ||
Строка 76: | Строка 59: | ||
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log | ErrorLog ${APACHE_LOG_DIR}/example.com_error.log | ||
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined | CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined | ||
− | </VirtualHost> | + | </VirtualHost></pre> |
− | </ | ||
4. Включите виртуальный хост: | 4. Включите виртуальный хост: | ||
− | < | + | <pre>sudo a2ensite example.com.conf</pre> |
− | sudo a2ensite example.com.conf | ||
− | </ | ||
5. Перезапустите Apache: | 5. Перезапустите Apache: | ||
− | < | + | <pre>sudo systemctl restart apache2</pre> |
− | sudo systemctl restart apache2 | ||
− | </ | ||
== 5. Настройка модулей Apache == | == 5. Настройка модулей Apache == | ||
Строка 94: | Строка 72: | ||
1. Включите модуль rewrite: | 1. Включите модуль rewrite: | ||
− | < | + | <pre>sudo a2enmod rewrite</pre> |
− | sudo a2enmod rewrite | ||
− | </ | ||
2. Включите модуль SSL: | 2. Включите модуль SSL: | ||
− | < | + | <pre>sudo a2enmod ssl</pre> |
− | sudo a2enmod ssl | ||
− | </ | ||
3. Включите модуль headers: | 3. Включите модуль headers: | ||
− | < | + | <pre>sudo a2enmod headers</pre> |
− | sudo a2enmod headers | ||
− | </ | ||
4. Перезапустите Apache: | 4. Перезапустите Apache: | ||
− | < | + | <pre>sudo systemctl restart apache2</pre> |
− | sudo systemctl restart apache2 | ||
− | </ | ||
== 6. Настройка файрвола == | == 6. Настройка файрвола == | ||
Строка 118: | Строка 88: | ||
1. Разрешите HTTP и HTTPS трафик: | 1. Разрешите HTTP и HTTPS трафик: | ||
− | < | + | <pre>sudo ufw allow 'Apache Full'</pre> |
− | sudo ufw allow 'Apache Full' | ||
− | </ | ||
=== Для CentOS/RHEL (firewalld) === | === Для CentOS/RHEL (firewalld) === | ||
1. Разрешите HTTP и HTTPS: | 1. Разрешите HTTP и HTTPS: | ||
− | < | + | <pre>sudo firewall-cmd --permanent --add-service=http</pre> |
− | sudo firewall-cmd --permanent --add-service=http | + | <pre>sudo firewall-cmd --permanent --add-service=https</pre> |
− | sudo firewall-cmd --permanent --add-service=https | + | <pre>sudo firewall-cmd --reload</pre> |
− | sudo firewall-cmd --reload | ||
− | </ | ||
== 7. Управление Apache == | == 7. Управление Apache == | ||
Строка 136: | Строка 102: | ||
* '''Запуск Apache''': | * '''Запуск Apache''': | ||
− | < | + | <pre>sudo systemctl start apache2</pre> |
− | sudo systemctl start apache2 | ||
− | </ | ||
* '''Остановка Apache''': | * '''Остановка Apache''': | ||
− | < | + | <pre>sudo systemctl stop apache2</pre> |
− | sudo systemctl stop apache2 | ||
− | </ | ||
* '''Перезапуск Apache''': | * '''Перезапуск Apache''': | ||
− | < | + | <pre>sudo systemctl restart apache2</pre> |
− | sudo systemctl restart apache2 | ||
− | </ | ||
* '''Перезагрузка конфигурации''': | * '''Перезагрузка конфигурации''': | ||
− | < | + | <pre>sudo systemctl reload apache2</pre> |
− | sudo systemctl reload apache2 | ||
− | </ | ||
* '''Проверка статуса''': | * '''Проверка статуса''': | ||
− | < | + | <pre>sudo systemctl status apache2</pre> |
− | sudo systemctl status apache2 | ||
− | </ | ||
* '''Проверка конфигурации''': | * '''Проверка конфигурации''': | ||
− | < | + | <pre>sudo apache2ctl configtest</pre> |
− | sudo apache2ctl configtest | ||
− | </ | ||
== 8. Настройка производительности == | == 8. Настройка производительности == | ||
Строка 170: | Строка 124: | ||
1. Отредактируйте основной файл конфигурации: | 1. Отредактируйте основной файл конфигурации: | ||
− | < | + | <pre>sudo nano /etc/apache2/apache2.conf</pre> |
− | sudo nano /etc/apache2/apache2.conf | ||
− | </ | ||
2. Настройте параметры производительности: | 2. Настройте параметры производительности: | ||
− | < | + | <pre>MaxRequestWorkers 150</pre> |
− | + | <pre>Timeout 300</pre> | |
− | MaxRequestWorkers 150 | + | <pre>KeepAliveTimeout 5</pre> |
− | + | <pre>LoadModule deflate_module modules/mod_deflate.so</pre> | |
− | |||
− | Timeout 300 | ||
− | KeepAliveTimeout 5 | ||
− | |||
− | |||
− | LoadModule deflate_module modules/mod_deflate.so | ||
− | </ | ||
== 9. Мониторинг и логи == | == 9. Мониторинг и логи == | ||
Строка 192: | Строка 137: | ||
* '''Логи ошибок''': | * '''Логи ошибок''': | ||
− | < | + | <pre>sudo tail -f /var/log/apache2/error.log</pre> |
− | sudo tail -f /var/log/apache2/error.log | ||
− | </ | ||
* '''Логи доступа''': | * '''Логи доступа''': | ||
− | < | + | <pre>sudo tail -f /var/log/apache2/access.log</pre> |
− | sudo tail -f /var/log/apache2/access.log | ||
− | </ | ||
* '''Все логи Apache''': | * '''Все логи Apache''': | ||
− | < | + | <pre>sudo tail -f /var/log/apache2/*.log</pre> |
− | sudo tail -f /var/log/apache2/*.log | ||
− | </ | ||
== 10. Безопасность == | == 10. Безопасность == | ||
Строка 211: | Строка 150: | ||
1. Скрыть версию Apache: | 1. Скрыть версию Apache: | ||
− | < | + | <pre>ServerTokens Prod</pre> |
− | ServerTokens Prod | + | <pre>ServerSignature Off</pre> |
− | ServerSignature Off | ||
− | </ | ||
2. Отключить ненужные модули: | 2. Отключить ненужные модули: | ||
− | < | + | <pre>sudo a2dismod autoindex</pre> |
− | sudo a2dismod autoindex | + | <pre>sudo a2dismod status</pre> |
− | sudo a2dismod status | ||
− | </ | ||
3. Настроить права доступа к файлам: | 3. Настроить права доступа к файлам: | ||
− | < | + | <pre>sudo chown -R www-data:www-data /var/www/</pre> |
− | sudo chown -R www-data:www-data /var/www/ | + | <pre>sudo chmod -R 755 /var/www/</pre> |
− | sudo chmod -R 755 /var/www/ | ||
− | </ | ||
== Заключение == | == Заключение == |
Текущая версия на 10:42, 15 октября 2025
Содержание
- 1 Установка и настройка Apache веб-сервера
Установка и настройка Apache веб-сервера
1. Подготовка системы
- Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
- Обновите систему до последней версии пакетов.
2. Установка Apache
Для Ubuntu/Debian
1. Обновите список пакетов:
sudo apt update
2. Установите Apache веб-сервер:
sudo apt install apache2
3. Запустите и включите автозапуск Apache:
sudo systemctl start apache2
sudo systemctl enable apache2
Для CentOS/RHEL/Fedora
1. Установите Apache:
sudo yum install httpd
- или для новых версий
sudo dnf install httpd
2. Запустите и включите автозапуск:
sudo systemctl start httpd
sudo systemctl enable httpd
3. Проверка установки
1. Откройте веб-браузер и перейдите по адресу http://ваш-ip-адрес или http://localhost. 2. Вы должны увидеть страницу приветствия Apache.
4. Базовая настройка Apache
Настройка виртуальных хостов
1. Создайте директорию для вашего сайта:
sudo mkdir -p /var/www/example.com/public_html
2. Создайте файл конфигурации виртуального хоста:
sudo nano /etc/apache2/sites-available/example.com.conf
3. Добавьте следующую конфигурацию:
<VirtualHost *:80> ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example.com/public_html <Directory /var/www/example.com/public_html> AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/example.com_error.log CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined </VirtualHost>
4. Включите виртуальный хост:
sudo a2ensite example.com.conf
5. Перезапустите Apache:
sudo systemctl restart apache2
5. Настройка модулей Apache
Включение необходимых модулей
1. Включите модуль rewrite:
sudo a2enmod rewrite
2. Включите модуль SSL:
sudo a2enmod ssl
3. Включите модуль headers:
sudo a2enmod headers
4. Перезапустите Apache:
sudo systemctl restart apache2
6. Настройка файрвола
Для Ubuntu/Debian (ufw)
1. Разрешите HTTP и HTTPS трафик:
sudo ufw allow 'Apache Full'
Для CentOS/RHEL (firewalld)
1. Разрешите HTTP и HTTPS:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
7. Управление Apache
Основные команды управления
- Запуск Apache:
sudo systemctl start apache2
- Остановка Apache:
sudo systemctl stop apache2
- Перезапуск Apache:
sudo systemctl restart apache2
- Перезагрузка конфигурации:
sudo systemctl reload apache2
- Проверка статуса:
sudo systemctl status apache2
- Проверка конфигурации:
sudo apache2ctl configtest
8. Настройка производительности
Оптимизация конфигурации
1. Отредактируйте основной файл конфигурации:
sudo nano /etc/apache2/apache2.conf
2. Настройте параметры производительности:
MaxRequestWorkers 150
Timeout 300
KeepAliveTimeout 5
LoadModule deflate_module modules/mod_deflate.so
9. Мониторинг и логи
Просмотр логов
- Логи ошибок:
sudo tail -f /var/log/apache2/error.log
- Логи доступа:
sudo tail -f /var/log/apache2/access.log
- Все логи Apache:
sudo tail -f /var/log/apache2/*.log
10. Безопасность
Базовая настройка безопасности
1. Скрыть версию Apache:
ServerTokens Prod
ServerSignature Off
2. Отключить ненужные модули:
sudo a2dismod autoindex
sudo a2dismod status
3. Настроить права доступа к файлам:
sudo chown -R www-data:www-data /var/www/
sudo chmod -R 755 /var/www/
Заключение
Apache веб-сервер успешно установлен и настроен! Теперь вы можете размещать веб-сайты и управлять их конфигурацией.
Для размещения ваших проектов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных проектов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних проектов
Наши специалисты помогут с настройкой Apache и других компонентов вашего сервера!