Как это сделать, Сервер, Ускорение

Как добавить сайт на сервер Ubuntu без панели. Полный гид

Добрый день. Аттестационные тесты необходимо выполнить на сайт https://lms.uchebaplus.ru Логин user629 Пароль Znaika629! Примерова Марта 9 класс: История: Необходимо сделать все тесты Обществознание: Необходимо сделать все тесты Биология: Необходимо сделать Вводный тест, Итоговый тест География: Необходимо сделать Вводный тест, Итоговый тест Физика Необходимо сделать тест Первое полугодие, Второе полугодие Русский язык Необходимо сделать тест Первое полугодие, Второе полугодие Математика Необходимо сделать тест Первое полугодие, Второе полугодие Химия Необходимо сделать тест "Металлы и неметаллы" Английский язык Необходимо сделать тест Первое полугодие, Второе полугодие Теория Вероятностей. Основные понятия и положения. Необходимо сделать все тесты ОБЖ Необходимо сделать тест Во вложении файл с инструкцией по выполнению тестов. По всем вопросам обращаться по почте ответным письмом. | WESPE CLUB
Читать 5 мин.

Когда у администратора сервера встаёт вопрос как добавить сайт на сервер Ubuntu, многие предпочитают использовать панели управления, такие как cPanel или Plesk, для упрощения работы с сервером. Однако этот подход только на первый взгляд прост. Любые нештатные ситуации решаются гораздо сложнее, к тому же это дополнительные сервисы, которые могут замедлить работу системы. Кроме того, стоимость коммерческих панелей довольно высока. Бесплатные панели управления обычно имею ограниченный функционал, что немаловажно. Наше решение – добавить сайт на сервер Ubuntu без панели.

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

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

В вашем случае могут быть незначительные различия, такие как база данных MySQL. Это не влияет на настройки. Если используете Apache вместо NGINX, настройки будут отличаться. Пишите в комментариях вопросы, объясним.

Мы будем использовать следующий конфиг:
1. Ubuntu 24.04
2. NGINX
3. MariaDB
4. Сертификаты Letsencrypt

Преимущества установки сайта без панели управления на сервере очевидны:

  • Быстродействие: Отсутствие лишних слоёв программного обеспечения значительно ускоряет работу вашего сервера. Панели управления, несмотря на удобство, могут добавлять дополнительные процессы, которые замедляют сервер.
  • Предсказуемость: Когда вы управляете сервером напрямую, вы лучше понимаете его работу. Отсутствие дополнительных абстракций позволяет вам точно контролировать, как работает каждый сервис, и быстрее устранять проблемы.
  • Стабильность: Минимизация сторонних программ снижает вероятность возникновения ошибок и конфликтов между различными сервисами, что делает систему более стабильной.

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

Шаг 1: Установка необходимых компонентов

Для начала нам нужно установить несколько важных компонентов: Nginx, PHP, MariaDB и необходимые расширения для работы с сайтом. Все эти компоненты работают хорошо вместе и обеспечивают стабильную работу сайта.

Установка Nginx:

Установка MariaDB:

После установки компонентов не забудьте запустить и включить их:

Шаг 2: Настройка MariaDB

Теперь, когда MariaDB установлена, нужно создать базу данных для вашего сайта. Заходим в MariaDB и создаем базу:

ВНИМАНИЕ! Не забудьте поменять название базы, имя пользователя и пароль на свои значения.

Шаг 3: Подготовка сайта

Теперь давайте подготовим директорию для сайта. В этом примере мы используем директорию /var/www/название_сайта. Если ваш сайт еще не загружен, вы можете сделать это через SFTP или SCP в созданную директорию.

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

Разархивируем и подготовим файлы:

Не забудьте задать правильные права на файлы и папки. Вполне вероятно при создании папок для файлов сайта под своим пользователем сайт не сможет иметь доступ к файловой системе. Это происходит потому, что сервер работает под пользователем www-data и обращаясь к файлам сайта, которые принадлежат вашему пользователю, будет получать отказ – “Permission denied”. Самое простое решение переназначить папки пользователю www-data, а после этого добавить своего пользователя в группу www-data, чтобы не потерять возможность работы с файлами под своим пользователем:

Шаг 4: Настройка Nginx

Теперь перейдем к настройке Nginx. Создадим конфигурационный файл для нашего сайта в /etc/nginx/sites-available/название_сайта.conf, а затем создадим символическую ссылку в директории /etc/nginx/sites-enabled/.

Конфигурация Nginx для сайта будет выглядеть так:

Не забудьте создать символическую ссылку:

Шаг 5: Установка SSL-сертификата

Для защиты сайта по HTTPS необходимо установить SSL-сертификат. Это на сегодняшний момент стандарт. Будем использовать Let’s Encrypt через Certbot. Certbot умеет писать настройки в NGINX, потому есть возможность получить сертификаты тремя способами:

  1. Без записи настроек. (После получения сертификатов это нужно будет делать вручную)
  2. В общий файл настроек Nginx (не рекомендуется для нескольких сайтов)
  3. В отдельный конфигурационный файл для каждого сайта (рекомендуемый вариант в нашем случае)

Вариант 1: Получение сертификата без изменения настроек Nginx

Этот вариант подходит, если вы хотите вручную настроить конфигурацию Nginx. Certbot только выдаст сертификаты, не изменяя файлы конфигурации:

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

Вариант 2: Автоматическое добавление настроек SSL в общий файл Nginx

Если у вас в /etc/nginx/nginx.conf или в другом общем файле уже есть настройки для всех сайтов, можно разрешить Certbot автоматически внести изменения:

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

Вариант 3: Автоматическая настройка SSL в отдельном файле конфигурации сайта

Если вы используете отдельные файлы конфигурации для каждого сайта (например, /etc/nginx/sites-available/название_сайта.conf), можно настроить Certbot так, чтобы он внёс изменения только в этот файл:

Этот метод удобен, если вы хотите, чтобы настройки применялись только к конкретному сайту, без изменения глобальных параметров Nginx.

После установки сертификатов для всех вариантов рекомендуется проверить конфигурацию и перезапустить Nginx:

Шаг 6: Перезагрузка Nginx

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

Вот и всё! Теперь сайт должен быть доступен по адресу https://название_сайта

Заключение

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

Если вы хотите узнать больше о настройках сервера или другие аспекты работы с Ubuntu, не стесняйтесь обращаться и задавать вопросы!

author-avatar

Автор - Wespe Club

Клуб веб-разработчиков. Наша миссия - сделать вебразработку понятной и доступной широкому кругу людей.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *