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

Ошибка в файле конфигурации nginx

Я слежу за руководство о работе Flask с nginx в Digital Ocean. После того, как я создал следующий файл конфигурации для nginx в / etc / sites-available / mysite:

server {
    listen 80;
    server_name your_domain www.your_domain;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:/home/user/myproject/myproject.sock;
    }
}

(очевидно, заменил домен на мой домен и путь к сокету с моим сокетом), когда я запускаю sudo nginx -t -c /etc/nginx/sites-available/mysite, Я получил

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

Я дважды проверил, правильно ли скопировал код. Что может пойти не так?

UPD:

Если я запускаю только sudo nginx -t, я не получаю никаких ошибок, но sudo systemctl restart nginx не работает с:

Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service" and "journalctl -xe" for details.

Команда systemctl status nginx.service возвращает:

 nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2018-11-27 11:33:49 UTC; 39s ago
     Docs: man:nginx(8)
  Process: 8485 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=1/FAILURE)
  Process: 8475 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)

journalctl -xe не содержит актуальных по времени записей.

Файл конфигурации nginx содержит http блок, который будет включать все файлы в / и т.д. / nginx / сайты-включен /. В руководстве предлагается создать файл в / и т.д. / nginx / сайты-доступные / а затем ссылку на него из / и т.д. / nginx / сайты-включен /.

Затем он предлагает вам проверить полный конфигурация с использованием sudo nginx -t пока вы только проверяете конфигурацию своего файла. Однако ваш файл - это лишь небольшой фрагмент полной конфигурации nginx, необходимой для работы nginx.

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

Ошибка в разные файл, который nginx прочитал непосредственно перед этим. Проверьте другие файлы на сайтах на предмет отсутствия }.