Android

Как настроить серверные блоки nginx в Ubuntu 18.04

Relax video | with gorgeous Arina and Nissan Skyline ECR33.

Relax video | with gorgeous Arina and Nissan Skyline ECR33.

Оглавление:

Anonim

Серверные блоки Nginx позволяют запускать более одного веб-сайта на одном компьютере. С помощью блоков серверов вы можете указать корневой каталог документов сайта (каталог, содержащий файлы сайта), создать отдельную политику безопасности для каждого сайта, использовать разные сертификаты SSL для каждого сайта и многое другое.

В этом руководстве мы предоставим пошаговые инструкции о том, как настроить серверные блоки Nginx (аналогично виртуальным хостам Apache) в Ubuntu 18.04.

Предпосылки

Убедитесь, что вы выполнили следующие предварительные условия, прежде чем продолжить этот урок:

  • У вас есть доменное имя, указывающее на IP вашего публичного сервера. В этом руководстве мы будем использовать example.com . У вас установлен Nginx, следуя этим инструкциям. Вы вошли как пользователь с привилегиями sudo.
В некоторой документации вы увидите, что Server Blocks называются Virtual host . Виртуальный хост - это термин Apache.

Создать структуру каталогов

Корень документа - это каталог, в котором файлы веб-сайта для доменного имени хранятся и обслуживаются в ответ на запросы. Мы можем установить корневой каталог документа в любое место, которое мы хотим, но в этом руководстве мы будем использовать следующую структуру каталогов:

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

По сути, мы создадим отдельный каталог для каждого домена, который мы хотим разместить на нашем сервере, внутри каталога /var/www . В каждом из этих каталогов мы создадим каталог public_html котором будут храниться файлы веб-сайта домена.

Давайте создадим корневой каталог для нашего домена example.com :

sudo mkdir -p /var/www/example.com/public_html

В целях тестирования мы создадим файл index.html внутри корневого каталога документа домена.

Откройте ваш редактор и создайте демонстрационный файл:

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

В этом руководстве мы выполняем команды от имени пользователя sudo, а вновь созданные файлы и каталоги принадлежат пользователю root.

Чтобы избежать каких-либо проблем с разрешениями, мы можем изменить владельца корневого каталога документов домена на пользователя Nginx ( www-data ):

sudo chown -R www-data: /var/www/example.com

Создать блок сервера

По умолчанию в системах Ubuntu файлы конфигурации блоков сервера Nginx хранятся в каталоге /etc/nginx/sites-available , которые активируются через символические ссылки на каталог /etc/nginx/sites-enabled/ .

Откройте выбранный вами редактор и создайте следующий файл блока сервера:

/etc/nginx/sites-available/example.com

server { listen 80; listen:80; root /var/www/example.com/public_html; index index.html; server_name example.com www.example.com; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; location / { try_files $uri $uri/ =404; } }

Вы можете назвать конфигурационный файл так, как вам нравится, но обычно лучше использовать доменное имя.

Чтобы включить новый файл блока сервера, нам нужно создать символическую ссылку из файла на каталог sites-enabled , который Nginx читает при запуске:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Проверьте правильность синтаксиса конфигурации Nginx:

sudo nginx -t

Если ошибок нет, результат будет выглядеть так:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Перезапустите службу Nginx, чтобы изменения вступили в силу:

sudo systemctl restart nginx

Наконец, чтобы убедиться, что серверный блок работает должным образом, откройте http://example.com в своем браузере, и вы увидите что-то вроде этого:

Вывод

Вы узнали, как создать конфигурацию блока сервера Nginx для размещения нескольких доменов на одном сервере Ubuntu. Вы можете повторить шаги, описанные выше, и создать дополнительные блоки серверов для всех ваших доменов.

Безопасный Nginx с Let's Encrypt на Ubuntu 18.04

Nginx Ubuntu

Этот пост является частью серии "Как установить lemp-stack-on-ubuntu-18-04".

Другие посты в этой серии:

• Как установить Nginx на Ubuntu 18.04 • Как настроить Nginx Серверные блоки на Ubuntu 18.04 • Secure Nginx с Давайте Шифрование на Ubuntu 18.04 • Как установить MySQL на Ubuntu 18.04 • Как установить PHP на Ubuntu 18.04