Apache2 (или Apache HTTP Server) - свободный и открытый веб-сервер, который используется для хостинга веб-сайтов. Он является одним из наиболее популярных веб-серверов в мире и может быть установлен на различных операционных системах, таких как Linux, Windows, macOS и другие.
Apache2 поддерживает множество протоколов, включая HTTP, HTTPS, FTP и другие, и может быть настроен для обработки динамических контентов, таких как PHP, Python, Perl и другие. Apache2 также имеет множество модулей и расширений, которые позволяют настраивать его для различных задач и требований.
Как установить?
Пропишем команду установки Apache2:
apt-get install apache2
Для centOS используйте команду «yum install httpd» (второе название Apache2).
Перед установкой Apache2 убедитесь, что на сервере отсутствует nginx!
Теперь перейдем к процессу настройки сервера.
Как правильно настроить Apache2
Переходим в sFTP по адресу /etc/apache2/sites-available и создаем файл server_name.conf (имя может быть любым), содержащий следующий текст с вашими данными:
<VirtualHost *:80>
ServerName aeza.net # Указать домен сайта
ServerAdmin admin@aeza.net # Ваш email
DocumentRoot /var/www/html # Путь до папки с сайтом
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Для запуска сайта введите команду:
a2ensite server_name.conf //укажите имя файла вашего сайта
Для отключения сайте используйте следующую команду:
a2dissite server_name.conf //укажите имя файла вашего сайта
Для перезагрузки следующую команду:
service apache2 reload
Подключение PHP к Apache2
Для использования php файлов установим специальный пакет:
apt-get install libapache2-mod-php -y
Перезагружаем Apache2:
service apache2 reload
Включение rewrite (перезаписи файлов)
Без этой настройки может не работать значительная часть CMS сайтов.
Пропишем настройки для файла .htaccess:
a2enmod rewrite
Перезагружаем Apache2:
service apache2 reload
Включение SSL (протокол шифрования)
Является не обязательным пунктом, повышающим доверие к вашему сайту
Включим модуль шифрования SSL:
a2enmod ssl
Перейдём по sFTP по адресу /etc/apache2/sites-available и создадим новый конфиг site_name-ssl.conf:
<VirtualHost *:443>
ServerName aeza.net # Указать домен сайта
ServerAdmin admin@aeza.net # Ваш email
DocumentRoot /var/www/html # Путь до папки с сайтом
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.pem # Путь до публичного сертификата
SSLCertificateKeyFile /path/to/your_private.key # Путь до приватного сертификата
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Перезагружаем Apache2:
service apache2 reload
Как видим, ничего сложного.