Preduvjeti
Instalirajte Python 3.7 na svoj web poslužitelj
Testirajte Python
Preduvjeti
- Vultr poslužitelj koji radi s najnovijim Arch Linuxom (pogledajte ovaj članak .)
- Pokrenuti web poslužitelj, Apache ili Nginx
- Sudo pristup:
- Naredbe koje se trebaju izvoditi kao root imaju prefiks
#. Preporučeni način za pokretanje naredbi kao root je da, kao obični korisnik, svakoj od njih dodate prefikssudo
- Imati instaliran uređivač teksta i biti upoznat s njim, kao što je vi, vim, nano, emacs ili sličan uređivač
Instalirajte Python 3.7 na svoj web poslužitelj
Na Apacheu
Nažalost, nije podržano pokretanje obje verzije Apache modula (za Python 2.x i 3.x) u isto vrijeme na istom Arch sustavu, ali to rijetko predstavlja problem.
Da biste koristili Python 3.x:
# pacman -S mod_wsgi
Omogućite Apache mod_wsgimodul uređivanjem /etc/httpd/conf/httpd.confi na kraju popisa LoadModulenaredbi dodajte sljedeće:
LoadModule wsgi_module modules/mod_wsgi.so
Na Nginxu
Da biste koristili Python 3.x:
# pacman -S uwsgi-plugin-python
Testirajte Python
Unutar odgovarajućeg imenika kreirajte test.pysa sljedećim sadržajem:
#-*- coding: utf-8 -*-
def wsgi_app(environment, start_response):
import sys
output = sys.version.encode('utf8')
status = '200 OK'
headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, headers)
yield output
application = wsgi_app
Na Apacheu
Dodajte na kraj /etc/httpd/conf/httpd.confili ako koristite više hostova, uredite odgovarajuću konfiguracijsku datoteku i dodajte odgovarajući <VirtualHost>blok:
WSGIScriptAlias /wsgi_app /srv/http/test.py
Ponovno pokrenite Apache:
# systemctl restart httpd
U web-pregledniku posjetite http://YOUR-SERVER-WEB-ADDRESS-OR-IP/wsgi_appi vidjet ćete testnu stranicu s verzijama za python i GCC.
Izbrišite test.pytestnu datoteku koju ste upravo stvorili i WSGIScriptAliasu svojoj Apache konfiguraciji.
Ponovno pokrenite Apache:
# systemctl restart httpd
Na Nginxu
Napravite datoteku /etc/uwsgi/wsgi_app.inisa sljedećim sadržajem:
[uwsgi]
socket = /run/uwsgi/wsgi_app.sock
uid = http
gid = http
plugins = python
chdir = /usr/share/nginx/html/
wsgi-file=test.py
callable = application
Započni posluživanje uWSGI wsqi_app:
# systemctl start uwsgi@wsgi_app
Dopustite Nginxu da koristi uWSGI uređivanjem /etc/nginx/nginx.confi za svaki blok poslužitelja koji želite testirati dodajte sljedeće. Alternativno, ako koristite virtualne hostove, uredite konfiguracijsku datoteku svakog hosta:
location ~ \wsgi_app {
root /usr/share/nginx/html/;
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/wsgi_app.sock;
}
Ponovno pokrenite Nginx:
# systemctl restart nginx
U web-pregledniku posjetite http://YOUR-SERVER-WEB-ADDRESS-OR-IP/wsgi_appi vidjet ćete testnu stranicu s verzijama za python i GCC.
Izbrišite test.pydatoteku koju ste upravo stvorili i blok lokacije u koji ste upravo dodali /etc/nginx/nginx.confza wsgi_app.
Ponovno pokrenite Nginx:
# systemctl restart nginx
Zaustavite uWSGI posluživanje wsgi_app:
# systemctl stop uwsgi@wsgi_app
Izbrišite /etc/uwsgi/wsgi_app.inii test.pytestirajte datoteke koje ste upravo stvorili.