Si të konfiguroni Gunicorn për të shërbyer aplikacionet në ueb Python

Në këtë artikull, ne do të konfigurojmë një VPS për të shërbyer aplikacionet në internet Python me Gunicorn dhe Nginx si një përfaqësues të kundërt. Ne përdorim Nginx si një përfaqësues të kundërt në vend që të shërbejmë drejtpërdrejt me Gunicorn për të parandaluar sulmet DoS në Gunicorn. Përdorimi i Nginx rezulton gjithashtu në performancë më të mirë (me proxy buffering) dhe rezulton në trajtimin e më shumë kërkesave.

Duke filluar

Ky tutorial supozon se ju tashmë keni një VM me Ubuntu 14.04 ose më të ri të instaluar, përditësuar dhe të siguruar.

  • Shembulli ynë Nginx do të funksionojë në portën HTTP 80 (por mund ta përmirësoni lehtësisht në HTTPS).
  • Shembulli ynë i aplikacionit Python do të dëgjojë në portin 8080. Ky port do të mbyllet në iptables për të parandaluar aksesin në distancë.
  • Ky tutorial duhet të ekzekutohet në shpërndarje të tjera me ndryshime minimale.

Install pip, virtualenv:

apt-get install python-pip python-virtualenv

Mbyll portin 8080. Gunicorn do të arrihet vetëm nga Nginx.

iptables -A INPUT -p tcp --destination-port 8080 -j DROP

Krijoni një dosje të re dhe konfiguroni aplikacionin tonë. Ne do të përdorim kornizën Flask.

mkdir /var/www-folder/
cd /var/www-folder/
virtualenv exampleapp
source exampleapp/bin/activate
cd exampleapp
pip install gunicorn
pip install flask

Krijo skedarin e aplikacionit.

nano myapplication.py 

Ngjitni sa vijon brenda:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Vultr!'

Kjo do të prodhonte një faqe të thjeshtë duke thënë "Përshëndetje, Vultr!" kur dikush hyn në faqe. Tani, filloni Gunicorn. Zëvendësojeni xme dyfishin e numrit të bërthamave të CPU-së së VM-së tuaj.

gunicorn -w x myapplication:app &

Instaloni Nginx dhe konfiguroni përfaqësuesin e kundërt.

deactivate
apt-get install nginx
nano /etc/nginx/sites-enabled/default

Kërkoni për location / {rreshtin dhe zëvendësoni përmbajtjen brenda kllapave me përmbajtjen e mëposhtme.

proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8000/;

Ky konfigurim udhëzon Nginx të përcjellë disa informacione (protokolli HTTP, adresa IP e largët) së bashku me kërkesën aktuale te serveri Gunicorn. Rifresko Nginx.

service nginx reload

Në këtë pikë, aplikacioni juaj Gunicorn është konfiguruar siç duhet. Mund ta përdorni duke përdorur një shfletues ueb në http://your-vps-ip/.

Lëreni një koment

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë