Изменение расположения корневого каталога веб-сервера Nginx на Ubuntu 16.04
10:55, 21.05.2025
При размещении веб-сайтов на веб-сервере Nginx вы можете захотеть изменить корневой каталог по умолчанию. Это поможет вам лучше организовать файлы и документы, повысить безопасность или приспособить различные структуры веб-сайтов. В Ubuntu 16.04 этот процесс прост, но требует тщательной настройки, чтобы обеспечить правильную работу сервера.
В этом руководстве вы узнаете, как изменить расположение корневого каталога Nginx и убедиться, что ваши конфигурации обновлены правильно.
Основные требования перед началом работы
Прежде чем приступить к изменению расположения корневого каталога Nginx, убедитесь, что у вас есть все необходимое:
- Сервер Ubuntu 16.04
Убедитесь, что у вас есть доступ к серверу Ubuntu 16.04 с установленным Nginx. Вы можете проверить установку Nginx, выполнив команду `nginx -v` в терминале. - Привилегии Root или Sudo
Для изменения конфигурационных файлов Nginx вам потребуется административный доступ. Если у вас нет root-доступа, убедитесь, что у вас есть учетная запись пользователя с правами sudo. - Текстовый редактор
Ознакомьтесь с текстовым редактором, таким как `nano` или `vim`, для редактирования конфигурационных файлов. - Базовые знания о Nginx
Базовое понимание принципов работы Nginx и структуры его конфигурации поможет вам без проблем внести необходимые изменения. - Резервное копирование текущей конфигурации
Прежде чем вносить какие-либо изменения, необходимо сделать резервную копию существующего файла конфигурации Nginx.
Это можно сделать с помощью команды `sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak`, чтобы иметь запасной вариант на случай каких-либо ошибок.
Шаг 1 - Перенос файлов в нужную директорию
Первым шагом в изменении местоположения корня сайта Nginx является перенос существующих файлов сайта в новую директорию, в которой будет находиться корень сайта.
- Создайте новую директорию.
Выберите место для новой корневой веб-директории. Обычно это `/var/www/new_root` или `/home/username/new_root`. Создайте этот каталог с помощью следующей команды:
sudo mkdir -p /var/www/new_root
- Перенесите файлы сайта.
Далее переместите существующие файлы сайта из текущего корня сайта (по умолчанию `/var/www/html`) в новую директорию:
sudo mv /var/www/html/* /var/www/new_root
Убедитесь, что все файлы и документы перемещены правильно. Вы можете использовать `cp` вместо `mv`, если хотите сохранить оригинальные файлы в качестве резервной копии.
- Обновление прав доступа к каталогам.
Важно убедиться, что у Nginx есть необходимые разрешения на чтение из новой директории. Настройте права собственности и разрешения с помощью:
sudo chown -R www-data:www-data /var/www/new_root
sudo chmod -R 755 /var/www/new_root
Эти команды гарантируют, что пользователь `www-data` (от имени которого работает Nginx) имеет соответствующие права на чтение и выполнение.
После выполнения этих задач вы успешно перенесли документы сайта в новый корневой каталог, подготовив его к будущим изменениям конфигурации Nginx.
Шаг 2 - Изменение параметров конфигурации Nginx
Теперь, когда файлы и документы вашего сайта находятся в новой директории, вам нужно обновить конфигурацию Nginx, чтобы она указывала на новое местоположение корня сайта.
- Откройте файл конфигурации Nginx
Файл конфигурации Nginx по умолчанию находится по адресу `/etc/nginx/sites-available/default`. Откройте его с помощью текстового редактора, например `nano`:
sudo nano /etc/nginx/sites-available/default
- Обновите корневую директиву
Найдите директиву `root` в блоке `server`.
Обычно она выглядит следующим образом:
root /var/www/html;
Измените эту строку, чтобы она указывала на ваш новый корневой каталог сайта, например:
root /var/www/new_root;
- Проверьте наличие дополнительных ссылок
Убедитесь, что вы обновили все другие ссылки на старый веб-корень в конфигурационном файле, например, в блоках `location`. Например:
location / {
root /var/www/new_root;
index index.html index.htm;
}
- Проверьте конфигурации Nginx
После сохранения изменений важно проверить конфигурацию Nginx на наличие синтаксических ошибок. Для этого выполните следующую команду:
sudo nginx -t
Если ошибок нет, вы увидите сообщение об успешной настройке.
- Перезагрузите Nginx для применения изменений
Наконец, перезагрузите Nginx, чтобы применить обновленную конфигурацию:
sudo systemctl reload nginx
Теперь Nginx должен обслуживать ваш сайт из нового корневого каталога. Обязательно проверьте свой сайт в браузере, чтобы убедиться, что все работает правильно.
Шаг 3 - Перезагрузка Nginx для вступления изменений в силу
После изменения конфигурации Nginx очень важно убедиться, что все изменения вступили в силу, перезапустив службу Nginx.
- Перезапустите Nginx
Используйте следующую команду для перезапуска Nginx:
sudo systemctl restart nginx
Эта команда останавливает, а затем запускает службу Nginx, применяя все последние изменения конфигурации, включая обновленное расположение корневой части веб-сайта.
- Проверьте работоспособность Nginx
Чтобы убедиться, что Nginx работает корректно после перезапуска, вы можете проверить его состояние с помощью команды:
sudo systemctl status nginx
Вы должны увидеть сообщение, указывающее на то, что Nginx активен и работает. Если возникли какие-либо проблемы, просмотрите сообщения об ошибках и исправьте проблемы в конфигурационном файле.
- Проверьте свой сайт
Наконец, откройте веб-браузер и перейдите на свой сайт. Убедитесь, что он загружается правильно и обслуживает документы из нового расположения корня сайта. Это подтверждает, что изменения были успешно применены.
Этот шаг полностью перезапустит Nginx, и обновленные настройки конфигурации вступят в силу.
Заключение
Изменение расположения корневого каталога Nginx в Ubuntu 16.04 - это простой процесс. Он обеспечивает большую гибкость в организации и управлении файлами и документами вашего сайта.
Ваш сервер будет продолжать эффективно работать с новым корневым каталогом, пока вы перезагружаете Nginx, аккуратно перенося файлы, документы и обновляя настройки конфигурации.
Не забывайте всегда создавать резервные копии файлов конфигурации перед внесением изменений и проверять настройки, чтобы избежать простоев. Уверенно настраивайте веб-корень Nginx в соответствии с потребностями хостинга и делайте свой сервер более адаптируемым к будущим изменениям или требованиям.