В этой статье мы увидим, как установить и настроить веб-сервер Apache2 в Ubuntu 16.04.
Примечание. В этой статье мы будем ссылаться на доменное имя как website1-example.com. Замените это доменное имя своим фактическим доменным именем, когда это необходимо.
Шаг 1. Установите веб-сервер Apache2
Мы начнем с обновления локального пакета, чтобы отразить последние восходящие изменения. После этого мы можем установить пакет Apache2.
Джава
1
$ sudo apt-get update
2
$ sudo apt-get install apache2
Статус можно проверить, выполнив следующие команды
Джава
xxxxxxxxxx
1
$ sudo systemctl status apache2
Вы можете получить доступ к целевой странице Apache по умолчанию, чтобы убедиться, что программное обеспечение работает правильно. Вы можете получить к нему доступ через доменное имя или IP-адрес вашего сервера.
Шаг 2: Проверьте веб-сервер
Запустите команду ниже, чтобы убедиться, что служба работает
Джава
xxxxxxxxxx
1
$ sudo systemctl status apache2
Теперь вы можете получить доступ к целевой странице Apache по умолчанию, чтобы убедиться, что программное обеспечение работает правильно. Вы можете получить к нему доступ через доменное имя или IP-адрес вашего сервера.
Например: http://www.website1-example.com
Шаг 3: Создать виртуальный хост
В Apache в Ubuntu все файлы конфигурации виртуального хоста хранятся в каталоге / etc / apache2 / sites-available . С новой установкой Apache вы можете найти файл виртуального хоста по умолчанию с именем 000-default.conf . Мы создадим новый файл конфигурации виртуального хоста, скопировав файл 000-default.conf.
Джава
xxxxxxxxxx
1
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/website1-example.com.conf
Откройте файл виртуального хоста:
Джава
xxxxxxxxxx
1
$ sudo nano /etc/apache2/sites-available/website1-example.com.conf
Файл должен выглядеть следующим образом:
Джава
xxxxxxxxxx
1
<VirtualHost *:80>
2
ServerAdmin webmaster
3
DocumentRoot /var/www/html
4
ErrorLog ${APACHE_LOG_DIR}/error.log
5
CustomLog ${APACHE_LOG_DIR}/access.log combined
6
</VirtualHost>
Теперь отредактируйте этот файл согласно вашему требованию. Моя конфигурация выглядит следующим образом:
Джава
xxxxxxxxxx
1
<VirtualHost *:8090>
2
ServerAdmin webmaster-example.com
3
ServerName website1-example.com
4
ServerAlias www.website1-example.com
5
DocumentRoot /var/www/website1-example.com
6
<Directory /var/www/website1-example.com>
7
Options Indexes FollowSymLinks MultiViews
8
AllowOverride All
9
Require all granted
10
allow from all
11
</Directory>
12
ErrorLog /var/www/website1-example.com/error.log
13
CustomLog /var/www/website1-example.com/access.log combined
14
</VirtualHost>
- ServerAdmin: адрес электронной почты администратора сервера.
- ServerName: домен, который должен соответствовать этой конфигурации виртуального хоста. Это должно быть ваше доменное имя. т.е. website1-example.com
- ServerAlias: это дополнительное условие сопоставления, которое необходимо обработать. то есть http://www.website1-example.com
- DocumentRoot: каталог, из которого Apache будет обслуживать файлы домена.
- Опции: Эта директива контролирует, какие функции сервера доступны в определенном каталоге.
- ErrorLog, CustomLog: указывает местоположение файлов журнала.
Шаг 4: Создать каталог проекта
По умолчанию корневым каталогом документа является / var / www / html . Мы создадим каталог website1-example.com в каталоге www, как определено в приведенной выше конфигурации виртуального хоста.
Джава
xxxxxxxxxx
1
$ sudo mkdir /var/www/website1-example.com
Теперь давайте создадим тестовый файл HTML с именем index.html в корневом каталоге, который мы только что создали на предыдущем шаге.
Джава
xxxxxxxxxx
1
$ sudo nano /var/www/website1-example.com/index.html
Добавьте следующий код в файл и сохраните его.
HTML
xxxxxxxxxx
1
<html>
2
<head>
3
<title>website1-example.com</title>
4
</head>
5
<body>
6
<h2> Welcome to website1-example.com </h2>
7
</body>
8
</html>
Шаг 5. Включите виртуальный хост
Включите виртуальный хост с помощью инструмента a2ensite:
Джава
xxxxxxxxxx
1
$ sudo a2ensite website1-example.com.conf
Примените изменения к Apache
Джава
xxxxxxxxxx
1
$ sudo service apache2 reload
Затем откройте файл / etc / hosts в редакторе и добавьте свой домен / IP-адрес, как показано ниже:
Джава
xxxxxxxxxx
1
$ sudo nano /etc/hosts
2
[...]
3
127.0.0.1 localhost
4
your-domain your-sever-name.com
Например:
Джава
xxxxxxxxxx
1
13.233.10.119 website1-example.com
2
[...]
Сохраните и закройте файл.
Шаг 6: Включить CORS
Теперь мы включим CORS на сервере Apache2. CORS — это процесс, который сообщает браузерам доступ к ресурсам из разных источников (домен, протокол, порт) через заголовки HTTP
Включите заголовки, набрав:
Джава
xxxxxxxxxx
1
$ sudo a2enmod headers
Откройте файл /etc/apache2/apache2.conf , введя следующую команду, и добавьте перекрестные заголовки в разделе <Directory>
Джава
xxxxxxxxxx
1
$ sudo nano /etc/apache2/apache2.conf
Например:
Рисунок: Конфигурация CORS
Шаг 7: Включить порты
Если вы используете порты, отличные от порта по умолчанию номер 80, нам нужно включить этот порт. На шаге 3 мы настроили виртуальный хост на порту 8090. Давайте включим порт 8090 в Apache2.
Откройте файл /etc/Apache2/ports.conf . В этом файле добавьте свой номер порта.
Например:
Джава
xxxxxxxxxx
1
$ sudo nano /etc/apache2/ports.conf
2
[...]
3
Listen 80
4
Listen 8090
5
[...]
Сохраните и закройте файл.
Перезапустите службу apache2, чтобы отразить все изменения.
Джава
xxxxxxxxxx
1
$ sudo service apache2 restart
Спасибо за прочтение!