Логотип
vexaiv

Создание простейшего сайта на Nginx

Шаг 1: Подключение к серверу и установка Nginx

Подключитесь к вашему серверу по SSH и выполните команды:
	
    # Обновляем список пакетов
sudo apt update

# Устанавливаем Nginx
sudo apt install nginx -y
После установки Nginx автоматически запустится.
Чтобы проверить, всё ли работает, откройте браузер и введите http://<IP-адрес-вашего-сервера>. Если вы увидели страницу приветствия Nginx — всё отлично.

Шаг 2: Создаем структуру и файлы сайта

Вам нужно создать директорию, где будут лежать файлы вашего сайта. Создайте папку для сайта (например, /var/www/my-site):
	
    sudo mkdir -p /var/www/my-site
Создайте простую HTML-страницу:
	
    sudo nano /var/www/my-site/index.html
Вставьте в файл простой код:
	
    <!DOCTYPE html> <html lang="ru"> <head>
    <meta charset="UTF-8">
    <title>Мой сайт без домена</title>;
</head>
<body>
    <h1>Привет, мир!</h1>
    <p>Этот сайт работает на Nginx без использования домена.</p>
    <p>Вы зашли по IP-адресу.</p>
</body>
</html>
Сохраните файл (в nano: Ctrl+X, затем Y, затем Enter).

🔧 Шаг 3: Настраиваем Nginx (создаем конфигурацию)

Нам нужно создать файл конфигурации, который укажет Nginx, откуда брать файлы для вашего сайта. Создайте новый конфигурационный файл:
	
    sudo nano /etc/nginx/sites-available/my-site
Вставьте в него базовую конфигурацию:
	
    server {
    # Слушаем 80 порт (стандартный порт HTTP)
    listen 80;
    
    # Здесь НЕ нужно писать домен. Оставляем подчеркивание или ничего.
    # Это значит "отвечать на все запросы, приходящие на этот IP".
    server_name _;

    # Корневая папка с файлами сайта
    root /var/www/my-site;

    # Главный файл, который будет открываться по умолчанию
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}
Сохраните файл.

Шаг 4: Включаем сайт и перезапускаем Nginx

Создайте символическую ссылку из sites-available в sites-enabled (чтобы активировать конфиг):
	
    sudo ln -s /etc/nginx/sites-available/my-site /etc/nginx/sites-enabled/
Проверьте, нет ли ошибок в конфигурации (это важный шаг!):
	
    sudo nginx -t
Вы должны увидеть: syntax is ok и test is successful.

Также проверьте права доступа. Обычно nginx работает от пользователя www-data и этот пользователь должен быть владельцем файлов сайта:
	
    chown -R www-data:www-data /var/www/my-site
-R значит "рекурсивно для всех вложенных файлов и папок, www-data:www-data - владелец "пользователь:группа".

Если всё хорошо, перезагрузите Nginx, чтобы применить изменения:
	
    sudo systemctl reload nginx

Шаг 5: Проверяем результат

Откройте браузер и снова введите http://<IP-адрес-вашего-сервера>.
Вместо стандартной страницы-заглушки Nginx вы должны увидеть вашу страницу с текстом "Привет, мир!".