Нгинк

Како се користи Нгинк са тиквицом.

Како се користи Нгинк са тиквицом.
Питхон је сјајан, лак за учење и свемоћан програмски језик, а са оквирима као што су Дјанго и Фласк, можемо га користити за стварање пуноправних веб апликација. Једном када креирамо веб апликацију користећи библиотеке и оквире као што је Фласк, морамо је хостовати на серверу и изложити јавности. Ово упутство говори о хостовању ваше веб апликације на серверу који покреће Нгинк помоћу Гуницорн-а. Пре него што започнемо са Фласком и Гуницорн-ом, уверите се да испуњавате следеће захтеве:

Подешавање сервера

Почнимо сада са подешавањем серверског окружења које ћемо користити за хостовање нашег сервера. Овај водич користи Убунту сервер. Започните ажурирањем спремишта и инсталирањем Питхон3 и Пип.

судо апт-гет упдате
судо апт-гет упграде -и
судо апт-гет инсталирај питхон3 питхон3-пип -и

Даље, треба да креирамо директоријум за чување пројекта.

судо мкдир / вар / ввв / апплицатион
цд / вар / ввв / апплицатион

Промените власништво над директоријумом и дозволе:

судо цховн -Р ввв-дата: ввв-дата / вар / ввв / апплицатион /

Затим инсталирајте пакете користећи апт (чутуру и Гуницорн)

судо апт-гет инсталирај питхон3-фласк питхон3-гуницорн

Кренимо сада са иницијализацијом апликације тиквице. Почните са стварањем главног.пи-држи апликацију-и всги.пи, што ће покренути апликацију.

судо тоуцх главни.пи всги.пи

Уредите главно.пи датотеку и подесите апликацију Фласк и све руте. Будући да овај водич није Фласк водич, поставићемо основну руту и ​​поруку здравог света.

из тиквице увоз Боца
апп = чутура (__ име__)
@апликација.рута("/")
деф хоме ():
повратак "

Нгинк & Гуницорн

"

Уредите всги.пи датотеку и додајте код за увоз апликације и покрените као:

из главне апликације за увоз
ако је __наме__ == "__главно__":
апликација.покрените (отклањање грешака = Тачно)

На крају, тестирајте да ли је покренут позивајући тиквицу као:

$ фласк рун
* Животна средина: производња
УПОЗОРЕЊЕ: Ово је развојни сервер. Не користите га у производној примени.
Уместо тога користите производни ВСГИ сервер.
* Режим отклањања грешака: искључен
* Трчање на хттп: // 127.0.0.1: 5000 / (Притисните ЦТРЛ + Ц да бисте изашли)

Покушајте да приступите апликацији на хттп: // лоцалхост: 5000.

Постављање Гуницорн-а

Када се наша апликација успешно покрене, можемо да користимо Гуницорн да тестирамо апликацију помоћу наредби:

$ судо гуницорн - радници 5 всги: апп
[2021-03-19 09:19:34 +0000] [14047] [ИНФО] Почетни гуницорн 20.0.4
[2021-03-19 09:19:34 +0000] [14047] [ИНФО] Слушам на: хттп: // 127.0.0.1: 8000 (14047)
[2021-03-19 09:19:34 +0000] [14047] [ИНФО] Коришћење воркер: синц
[2021-03-19 09:19:34 +0000] [14049] [ИНФО] Радник за покретање система са пид-ом: 14049
[2021-03-19 09:19:34 +0000] [14050] [ИНФО] Радник за подизање система са пид-ом: 14050
[2021-03-19 09:19:34 +0000] [14051] [ИНФО] Радник за подизање система са пид-ом: 14051
[2021-03-19 09:19:34 +0000] [14052] [ИНФО] Радник за подизање система са пид-ом: 14052
[2021-03-19 09:19:35 +0000] [14053] [ИНФО] Радник за подизање система са пид-ом: 14053

Горње наредбе покрећу апликацију тиквице користећи Гуницорн користећи наведени број радника. Затим зовемо датотеку всги: апп, која је датотека и инстанца апликације коју треба покренути.

Када покренете апликацију користећи Гуницорн, притисните ЦТРЛ + Ц да бисте зауставили сервер и поставили Нгинк.

Користите доње наредбе за инсталирање и покретање Нгинка.

судо апт-гет инсталирај нгинк -и
судо системцтл старт нгинк
судо системцтл омогући нгинк

Следећи корак је уређивање Нгинк конфигурације у директоријуму са омогућеним локацијама и додавање блока сервера. Размотрите следећу конфигурацију. Промените апликацију у назив вашег пројекта.

судо нано / етц / нгинк / ситес-аваилабле / апплицатион.цонф
сервер
слушај 80;
апликација име_сервера;
аццесс_лог / вар / лог / нгинк / апплицатион.приступ.Пријава;
еррор_лог / вар / лог / нгинк / апплицатион.грешка.Пријава;
локација /
укључују проки_парамс;
проки_пасс хттп: // уник: / вар / ввв / апплицатион / апплицатион.чарапа;

Наставите да креирате везу до директоријума на којем је омогућена веб локација да бисте омогућили веб локацију.

судо лн -с / етц / нгинк / ситес-аваилабле / апплицатион.цонф / етц / нгинк / ситес-енаблед /

Сада поново покрените Нгинк услугу као:

судо системцтл рестарт нгинк

Даље, морамо створити датотеку системске јединице која ће служити апликацији.

судо нано / етц / системд / систем / апплицатион.услуга
[Јединица]
Опис = апликација.услуга - Фласк апликација покренута са Гуницорн.
После = мрежа.мета
[Услуга]
Корисник = ввв-подаци
Група = ввв-подаци
ВоркингДирецтори = / вар / ввв / апплицатион /
ЕкецСтарт = / уср / бин / гуницорн --радници 3 --бинд уник: / вар / ввв / апплицатион.чарапа всги: апп
[Инсталирај]
ВантедБи = вишекориснички.мета

На крају, сачувајте датотеку јединице, а затим омогућите и поново учитајте демон.

судо системцтл поново покрените апликацију.услуга
судо системцтл даемон-релоад

Сада апликацији можете приступити користећи ИП адресу или адресу наведену у конфигурационој датотеци нгинк. Можда ћете га морати додати у датотеку хоста.

цурл хттп: // апликација
ХТТП / 1.1 200 ОК
Сервер: Веркзеуг / 0.16.1 Питхон / 3.8.5)
Датум: Пет, 19. марта 2021. 10:00:39 ГМТ
Цонтент-Типе: тект / хтмл
Дужина садржаја: 25
Последња измена: Фри, 19 Мар 2021 09:22:47 ГМТ

Закључак

У овом водичу је објашњено како поставити Питхон Фласк апликацију и сервирати је преко Нгинка користећи Гуницорн. Размотрите појединачну документацију да бисте сазнали више о услугама о којима се говори у овом водичу.

Како приказати ОСД прекривач у целом екрану Линук апликација и игара
Играње игара преко целог екрана или коришћење апликација у режиму целог екрана без ометања може вам одсећи релевантне системске информације видљиве на...
Топ 5 карата за хватање игара
Сви смо видели и волели стримовање играња на ИоуТубе-у. ПевДиеПие, Јакесептицие и Маркиплиер само су неки од најбољих играча који су зарадили милионе ...
Како развити игру на Линуку
Пре деценију, није много корисника Линука предвидело да ће њихов омиљени оперативни систем једног дана бити популарна платформа за играње комерцијални...