JUNIOR-BLOG

Для всех кто увлекается программированием

Добавляем доменное имя для сайта размещенного на VPS

Это вторая часть по теме как разместить сайт разработанный с использование Laravel и Sail на VPS.

 Ссылка на первую часть .

Шаг 1. Покупка имени и настройка DNS

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

Далее  Вам необходимо настроить DNS, данное действие я тоже не вижу смысла описывать, но в случае чего пишите.

Обратите внимание, что после изменения DNS, должно пройти какое-то время ( может быть от часа и до суток) прежде чем DNS обновиться, поэтому даже если правильно выполнить следующие шаги, сайт может не загружаться так как DNS еще не “готов”.

 

Шаг 2. Установка NGINX

Nginx — это веб-сервер с открытым исходным кодом, который также может выполнять функции обратного прокси-сервера, балансировщика нагрузки и HTTP-кэша.

Теперь можно подключиться по ssh к VPS( не с рут пользователя, а с того, который мы создавали в прошлой части). И пишем следующие команды:

sudo apt update
sudo apt install nginx

 

Шаг 3. Редактируем хост файл

Теперь нам необходимо,  прописать наш сайт в хост файл. Открываем его:

sudo nano /etc/hosts

 

И добавляем строчку:

0.0.0.0         example.com

 

Нажимаем Ctrl+O и Enter чтобы сохранить изменения, а после Ctrl+X, для того чтобы выйти из редактора nano.  

Шаг 4. Создания конфига NGINX

Создаем новый файл конфигурации в где мы укажем при каком имени должен открываться сайт:

sudo nano /etc/nginx/sites-available/example.com.conf

 

В моем случае это:

sudo nano /etc/nginx/sites-available/junior-blog.ru.conf

 

Теперь нам необходимо его заполнить,  с помощью Ctrl+Shift+V вставляем следующий текст:

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://0.0.0.0:80;  
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Здесь мы говорим, что NGINX должен слушать 80 порт и когда у нас идет запрос example.com он должен вернуть  http://0.0.0.0:80  . При этом обратите внимание, что нули мы оставляем без изменений, но проверьте на каком порту открывается ваше приложение, там может быть не 80 (по умолчанию идет 80, но можно было самому поменять и забыть об этом) 

Теперь сделайте символическую ссылку в `sites-enabled`

В Nginx конфигурация виртуальных хостов (или сайтов) обычно хранится в директории `/etc/nginx/sites-available`, а активные конфигурации — в директории `/etc/nginx/sites-enabled`. Символическая ссылка (или symlink) из `sites-available` в `sites-enabled` позволяет управлять активными конфигурациями более удобно.

Зачем использовать символические ссылки:

  • Управление конфигурациями: Хранение конфигураций в `sites-available` позволяет вам иметь несколько конфигураций, из которых вы можете активировать или деактивировать любые по мере необходимости, просто создавая или удаляя символические ссылки.
  • Упрощение процесса активации/деактивации: Чтобы активировать сайт, достаточно создать символическую ссылку, а чтобы деактивировать — удалить её. Это проще, чем копировать или перемещать файлы конфигурации.
  • Организация: Это помогает поддерживать порядок в конфигурациях, так как все активные сайты находятся в одной директории (`sites-enabled`), а не разбросаны по разным местам.

 

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

 

Теперь можно перезапустить nginx:

sudo systemctl restart nginx

 

 

Вот и все на этом моменте сайт должен быть доступен по доменному имени. Спасибо за внимание

 

 

Похожие статьи

Деплой Laravel Sail приложения на VPS

Цель этого туториала — разместить приложение, разработанное на Laravel 11, на VPS. Проект создан с использованием Docker и Laravel Sail

Читать дальше...

Комментарии