Назад | Перейти на главную страницу

почему этот файл .conf выдает ошибку «Директива сервера здесь не разрешена»?

Я прочитал несколько других ответов на почти тот же вопрос, но они, похоже, не относятся к моему запросу (некоторые из них из-за diff environment и т. Д.).

Я настраиваю новый сервер Ubuntu на DO. На нем я создал файл /etc/nginx/sites-available/3.conf. В этом файле есть только этот код (я пробовал и остальные строки кода, но тоже результат тот же).

server {
     listen 80
     listen [::]:80;
     server_name 3.hotelbobbygg.xyz;
}

И все же, когда я тестирую это так root@2:~# nginx -t -c /etc/nginx/sites-available/3.conf Выдает следующую ошибку:

nginx: [emerg] "server" directive is not allowed here in /etc/nginx/sites-available/3.conf:1
nginx: configuration file /etc/nginx/sites-available/3.conf test failed

И если я удалю все содержимое этого файла, даже тогда он выдаст такую ​​ошибку:

syntax is ok
nginx: [emerg] no "events" section in configuration
nginx: configuration file /etc/nginx/sites-available/3.conf test failed

И если я дам это: nginx -t Затем это tests ok

Это просто новая капля, и помимо обновления ОС и создания подпапки под /var/www/ Я не касался других файлов.

Пожалуйста, ответьте словами парню, который плохо знаком с серверами и пытается изучить базовые функции (я успешно установил дискурс-сайт на ubuntu, и теперь я хочу настроить другой веб-сайт на том же сервере / сервере).

Вы используете неправильный флаг. Из документации

-c имя_файла Укажите, какой файл конфигурации NGINX должен использовать вместо файла по умолчанию

Итак, когда вы бежите

nginx -t -c /etc/nginx/sites-available/3.conf

Вы говорите серверу использовать 3.conf вместо основной конфигурации. Что, конечно, приведет к ошибке, так как серверный блок должен быть вложен. И сайты-доступные файлы включены в основной файл conf. Когда ты бежишь

nginx -t

Это нормально, потому что команда проверяет все файлы конфигурации, включая ваш сайты-доступные. Нет причин запускать его с флагом -c, если вы не тестируете полностью новую основную конфигурацию