Рейтинг:0

Не удается перезапустить nginx, я думаю, что-то с портом 80?

флаг by

Я следую руководству по фляге Кори Шафера.

Я пытаюсь выполнить развертывание на сервере Linux, но не могу заставить работать nginx.

Это команды, которые я запускал до сих пор:

sudo apt установить nginx

пип установить пушкикорн

sudo rm /etc/nginx/sites-enabled/по умолчанию

Затем я попытался создать и отредактировать новый файл:

sudo nano /etc/nginx/sites-enabled/flaskblog

Вот что я ввожу в этот файл:

сервер {
    слушать 80;
    имя_сервера ДОМЕН_IP;

    местоположение/статический {
        псевдоним /Users/myname/VScode/Flask_Blog/flaskblog/static;
    }

    место расположения / {
        proxy_pass http://localhost:8000;
        включить /etc/nginx/proxy_params;
        прокси_перенаправление выключено;
    }
}

затем я бегу

sudo nano ufw разрешить http/tcp

sudo ufw удалить разрешить 5000

sudo ufw включить

Затем, когда я пытаюсь перезапустить nginx, я получаю отказ

sudo systemctl перезапустить nginx

Производит

Задание для nginx.service завершилось неудачно, так как процесс управления завершился с кодом ошибки.
Подробнее см. в разделах «systemctl status nginx.service» и «journalctl -xeu nginx.service».

статус systemctl nginx.service

Производит:

    nginx.service — высокопроизводительный веб-сервер и обратный прокси-сервер.
         Загружено: загружено (/lib/systemd/system/nginx.service; включено; предустановка поставщика: включена)
         Активно: сбой (результат: код выхода) со вторника 31 мая 2022 г. 06:33:22 UTC; 4мин 6с назад
           Документы: man:nginx(8)
        Процесс: 62279 ExecStartPre=/usr/sbin/nginx -t -q -g демон включен; master_process включен; (код=выход, статус=0/SUCC>
        Процесс: 62280 ExecStart=/usr/sbin/nginx -g демон включен; master_process включен; (код=выход, статус=1/ОШИБКА)

sudo systemctl статус nginx

Производит:

    nginx.service — высокопроизводительный веб-сервер и обратный прокси-сервер.
     Загружено: загружено (/lib/systemd/system/nginx.service; включено; предустановка поставщика: включена)
     Активно: сбой (результат: код выхода) со среды 01.06.2022 09:41:07 UTC; 2 мин 5 с назад
       Документы: man:nginx(8)
    Процесс: 66304 ExecStartPre=/usr/sbin/nginx -t -q -g демон включен; master_process включен; (код=выход, статус=1/ОШИБКА)
        ЦП: 11 мс

01 июня, 09:41:07 flask-server systemd[1]: запуск высокопроизводительного веб-сервера и обратного прокси-сервера...
01 июня, 09:41:07 flask-server nginx [66304]: nginx: [emerg] неизвестная директива "/Users/charleserrington/VScode/Flask_Blog/flaskblog" в /etc/nginx/sites-enabled/flaskblog:6
01 июня, 09:41:07 flask-server nginx [66304]: nginx: проверка файла конфигурации /etc/nginx/nginx.conf не удалась
01 июня, 09:41:07 flask-server systemd[1]: nginx.service: Процесс управления завершен, код = завершен, статус = 1/FAILURE
01 июня, 09:41:07 flask-server systemd[1]: nginx.service: Ошибка с результатом «код выхода».
01 июня, 09:41:07 flask-server systemd[1]: не удалось запустить Высокопроизводительный веб-сервер и обратный прокси-сервер.

судо нано /var/log/nginx/error.log

Производит:

31.05.2022, 05:54:02 [появление] 61717#61717: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: bind() to [::]:80 не удалось (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: bind() to [::]:80 не удалось (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: bind() to [::]:80 не удалось (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: bind() to [::]:80 не удалось (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: bind() to [::]:80 не удалось (98: неизвестная ошибка)
31.05.2022, 05:54:02 [появление] 61717#61717: до сих пор не удалось связать()
31.05.2022, 06:06:31 [появление] 62174#62174: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:06:31 [появление] 62174#62174: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:06:31 [появление] 62174#62174: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:06:31 [появление] 62174#62174: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:06:31 [появление] 62174#62174: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:06:31 [появление] 62174#62174: до сих пор не удалось связать()
31.05.2022, 06:10:15 [появление] 62189#62189: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:10:15 [появление] 62189#62189: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:10:15 [появление] 62189#62189: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:10:15 [появление] 62189#62189: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:10:15 [появление] 62189#62189: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:10:15 [появление] 62189#62189: до сих пор не удалось связать()
31.05.2022, 06:23:31 [появление] 62221#62221: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:23:31 [появление] 62221#62221: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:23:31 [появление] 62221#62221: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:23:31 [появление] 62221#62221: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:23:31 [появление] 62221#62221: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:23:31 [появление] 62221#62221: до сих пор не удалось связать()
31.05.2022, 06:33:20 [появление] 62280#62280: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:33:20 [появление] 62280#62280: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:33:20 [появление] 62280#62280: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:33:20 [появление] 62280#62280: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:33:20 [появление] 62280#62280: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)
31.05.2022, 06:33:20 [появление] 62280#62280: до сих пор не удалось связать()
01.06.2022, 05:54:41 [появление] 65391#65391: сбой привязки() к 0.0.0.0:80 (98: неизвестная ошибка)

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

Я прочитал много сообщений о сбоях сервера и переполнении стека, и мне показалось, что это как-то связано с портом 80, я выполнил многие из рекомендованных команд, в том числе:

нетстат -tnlp | grep -w 80
netstat -ano|grep 80|grep ПРОСЛУШАТЬ
судо netstat-lnp
судо lsof -я: 80
kill -9 65734 (у меня не было разрешения запустить это)
netstat -tulpn
grep -rnw /etc/nginx/ -e '80'

И одна из этих команд заставила его работать и позволила мне перезапустить nginx и получить доступ к веб-сайту, но я не знаю, который, и теперь он снова сломан, но в прошлый раз это выглядело так, как будто что-то было на порту 80, но теперь, когда я запускаю проверяет, нет ли ничего в порту 80, кажется, поэтому я еще больше потерялся, чем раньше.

РЕДАКТИРОВАТЬ:

Как указал Ник Андриопулос, проблема, по-видимому, вызвана

местоположение/статический {
    псевдоним /Users/myname/VScode/Flask_Blog/flaskblog/static;
}

я изменил это на

местоположение/статический {
    корень /Пользователи/мое имя/VScode/Flask_Blog/flaskblog/;
}

Как только я это сделал, я смог перезапустить nginx, и теперь сайт работает, но теперь nginx не может найти статический файл.

Я проверил журнал ошибок и вижу несколько строк такого рода:

   03.06.2022, 06:09:42 [ошибка] 71064#71064: *1 open() "/Users/myname/VScode/Flask_Blog/flaskblog/static/main.css" не удалось (2: нет такого файла или каталога) , клиент: 217.146.83.247, сервер: IP, запрос: "GET /static/main.css HTTP/1.1", хост: "IP", реферер: "http://IP/"
03.06.2022 06:09:42 [ошибка] 71064#71064: *1 open() "/Users/myname/VScode/Flask_Blog/flaskblog/static/profile_pics/271fcf0ffe2a92aa.jpg" не удалось (2: нет такого файла или каталог), клиент: 217.146.83.247, сервер: IP, запрос: "GET /static/profile_pics/271fcf0ffe2a92aa.jpg HTTP/1.1", хост: "IP", реферер: "http://IP/"
03.06.2022, 06:09:42 [ошибка] 71064#71064: *4 open() "/Users/myname/VScode/Flask_Blog/flaskblog/static/profile_pics/default.jpg" не удалось (2: нет такого файла или каталог), клиент: 217.146.83.247, сервер: IP, запрос: "GET /static/profile_pics/default.jpg HTTP/1.1", хост: "IP", реферер: "http://IP/"
03.06.2022, 06:09:45 [ошибка] 71064#71064: *4 open() "/Users/myname/VScode/Flask_Blog/flaskblog/static/main.css" не удалось (2: нет такого файла или каталога) , клиент: 217.146.83.247, сервер: IP, запрос: "GET /static/main.css HTTP/1.1", хост: "IP", реферер: "http://IP/home"

Таким образом, nginx не может найти/доступ к указанному мной пути.

Однако это правильный путь, если я выполню «Перейти к папке» на своем Mac и вставлю все файлы и папки, которые там есть. Спасибо за любую помощь.

Рейтинг:0
флаг in

Из вашего вывода кажется, что проблема связана с вашей пользовательской конфигурацией:

sudo systemctl статус nginx:

01 июня, 09:41:07 flask-server nginx [66304]: nginx: [emerg] неизвестная директива "/Users/charleserrington/VScode/Flask_Blog/flaskblog" в /etc/nginx/sites-enabled/flaskblog:6
01 июня, 09:41:07 flask-server nginx [66304]: nginx: проверка файла конфигурации /etc/nginx/nginx.conf не удалась
01 июня, 09:41:07 flask-server systemd[1]: nginx.service: Процесс управления завершен, код = завершен, статус = 1/FAILURE

Эти ошибки означают, что строка

    местоположение/статический {
        псевдоним /Users/myname/VScode/Flask_Blog/flaskblog/static;
    }

Скорее всего виноват в том, что сервер не запускается. Журналы привязки приходят после этого.

Подтвердите, что указанный выше путь ( /Пользователи/мое имя/VScode/Flask_Blog/flaskblog/статические существует и доступен процессу nginx.

флаг by
Я думаю, вы правы. Спасибо. Я отредактировал нижнюю часть вопроса выше, потому что форматирование в разделе комментариев ужасно. Не могли бы вы проверить, что я написал ниже РЕДАКТИРОВАТЬ:?
Рейтинг:-1
флаг in

Я думаю, что порт 80 работает под веб-сервером Apache. Вы не можете запускать два веб-сервера одновременно.

Во-первых, вы проверяете, что порт 80 уже запущен,

sudo netstat -plunt | группа 80

tcp6 0 0 :::80 :::* ПРОСЛУШАТЬ 1573456/apache2

Если он запущен, то отключите апач:

sudo служба apache2 остановить

Теперь запустите Nginx:

запуск службы sudo nginx
флаг in
Вывод этой команды уже находится в операции и показывает, что на этом порту ничего не прослушивается.

Ответить или комментировать

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