Форум программистов, компьютерный форум, киберфорум
Python: Flask
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305

Развертывание приложения Flask. Gunicorn + Nginx. Debian 8

14.08.2019, 16:20. Показов 1318. Ответов 0

Студворк — интернет-сервис помощи студентам
Debian 8
Python 2.7
Необходимо развернуть приложение на linux машине.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# app.py
 
from flask import Flask, send_file, request, Response, make_response
 
app = Flask(__name__)
app.config['PROPAGATE_EXCEPTIONS'] = True
 
# реализация
...
 
@app.route('/')
@nocache
def index():
    # реализация
    ...
 
@app.route('/get-data', methods=['POST'])
def get():
    # реализация
    ...
 
if __name__ == '__main__':
    logging.basicConfig(filename='error.log',level=logging.DEBUG)
    socket_connection()
    app.run(host='0.0.0.0')
Запрос get-data отправляется на сервер каждую секунду.
Python
1
2
3
4
5
# wsgi.py
from app import app
 
if __name__ == "__main__":
    app.run()
Gunicorn запускается с помощью запуска следующего сервиса:

[Unit]
Description=Gunicorn instance to serve myproject
After=network.target
[Service]
User=root
Group=www-data
WorkingDirectory=/media/flash/myproject
Environment="PATH=/media/flash/myproject/myprojectenv/bin"
ExecStart=/usr/bin/gunicorn --workers 1 --bind unix:myproject.sock -m 007 wsgi:app
[Install]
WantedBy=multi-user.target


Конфиг nginx дефолтный. В /etc/nginx/sites-enabled ссылка на файл /etc/nginx/sites-available/myproject, который имеет следующее содержание:


server {
listen 80;
server_name 169.254.5.14;
location / {
include proxy_params;
proxy_pass [url]http://unix:/media/flash/myproject/myproject.sock;[/url]
}
}


Когда перехожу http://169.254.5.14 страничка загружается, но запрос get-data всегда возвращает 500 Internal Server Error.
В чем может быть проблема?
Если запустить только gunicorn без nginx, то все работает.

Добавлено через 2 часа 34 минуты
Решено. Проблема была в реализации метода get.
Ответ на вопрос: реализация нормального логирования.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.08.2019, 16:20
Ответы с готовыми решениями:

Трудности в использовании gunicorn+nginx
Коллеги, здравствуйте. Прошу оказать помощь в моей проблеме. django-проект разворачивал в virtualenv. Что имеем: django 2.2, python...

Сокет для взаимодействия nginx и gunicorn
Доброго дня! Решил разорбраться в пайтоне для веб. Под конкретные задачи. Сел готовить эту штуку и вот что-то ничерта понять не...

При развертывании nginx + gunicorn вызывается бесконечный редирект
Пытаюсь развернуть проект на боевом сервере. Использую nginx + gunicorn. И мне выдает вот такую ошибку: Может кто то знает...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.08.2019, 16:20
Помогаю со студенческими работами здесь

Как отдаются .py файлы при деплое flask приложения на vps? Используется nginx + gunicorn
Мне известно, что Nginx умеет отдавать статические файлы (HTML + CSS). Но каким образом, при деплое на vps в браузер отдаются файлы .py?...

Как настроить, для деплоя веб-приложения на Фласке на vps, Nginx, с gunicorn?
У меня есть статика: CSS, JavaScript. HTML-шаблоны. БД SQLite3. В какую папку у Nginx эти файлы положить? А также как создать и привязать...

Развертывание приложения на uwsgi и nginx
Делаю первые попытки развернуть сайт на Django на боевом сервере (пошла 2-ая неделя попыток) digitalocean с использованием uwsgi и nginx в...

Развертывание приложения на Ubuntu Server + nginx + tomcat embedable + java
У меня установлен ubuntu server 18 Я развертываю приложение на удаленном сервере из среды Windows. Развертывание осуществляется через...

Как подружить Nginx и Gunicorn?
На сервере(Centos7) на 80-м порту бежит Nginx на 5000-м Gunicorn+Flask как мне убелить Nginx трагслировать содежимое с 5000го порта?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru