Перед установкой Apache2 необходимо убедиться, что на сервере отсутствует nginx!
Для установки Apache2 на VDS, необходимо прописать:
apt-get install apache2
Для настройки Apache2 переходим на /etc/apache2/sites-available и создаем файл по образцу site.conf:
<VirtualHost *:80>ServerName spacecore.pro # Указать домен сайтаServerAdmin [email protected] # Ваш emailDocumentRoot /var/www/html # Путь до папки с сайтомErrorLog ${APACHE_LOG_DIR}/error.logCustomLog ${APACHE_LOG_DIR}/access.log combined</VirtualHost>
Включаем сайт, место site.conf должно быть названия конфига, который Вы создали:
a2ensite site.conf
Если нужно отключить сайт, вместо site.conf должно быть названия конфига:
a2dissite site.conf
Перезагружаем apache2:
service apache2 reload
Для того, чтобы Apache смог корректно отображать php файлы, необходимо установить пакет:
apt-get install libapache2-mod-php -y
Перезагружаем apache2:
service apache2 reload
Без этой опции не будет работать 70% CMS для сайтов.
Большинство сайтов содержат файл .htaccess для его работы необходимо прописать:
a2enmod rewrite
Перезагружаем apache2:
service apache2 reload
Подключение SSL не обязательно, осуществляется при его наличии и Вашем желании.
Нужно включить модуль, который отвечает за SSL:
a2enmod ssl
Создаем еще один конфиг в /etc/apache2/sites-available, он будет отвечать за SSL, например site-ssl.conf:
site-ssl.conf<VirtualHost *:443>ServerName spacecore.pro # Указать домен сайтаServerAdmin [email protected] # Ваш emailDocumentRoot /var/www/html # Путь до папки с сайтомSSLEngine onSSLCertificateFile /path/to/your_domain_name.pem # Путь до публичного сертефекатаSSLCertificateKeyFile /path/to/your_private.key # Путь до приватного сертефекатаErrorLog ${APACHE_LOG_DIR}/error.logCustomLog ${APACHE_LOG_DIR}/access.log combined</VirtualHost>
Перезагружаем apache2:
service apache2 reload
Если apache2 поставить c nginx, то они будут конфликтовать из-за порта - 80. Так что необходимо удалить один из web-server. Проверяем установлен ли nginx:
service nginx status
Если не будет видно огромного сообщения с информацией, значит он не установлен.
Если nginx установлен, нужно его удалить:
apt-get remove --purge nginx* -y
Для удаления Apache2 используйте:
apt-get remove --purge apache2* -y