Προαπαιτούμενα
Εγκαταστήστε την Python 3.7 στον διακομιστή ιστού σας
Δοκιμή Python
Προαπαιτούμενα
- Ένας διακομιστής Vultr με ενημερωμένο Arch Linux (δείτε αυτό το άρθρο .)
- Ένας διακομιστής ιστού που λειτουργεί, είτε Apache είτε Nginx
- Πρόσβαση Sudo:
- Οι εντολές που απαιτούνται για εκτέλεση ως root έχουν το πρόθεμα
#. Ο συνιστώμενος τρόπος εκτέλεσης εντολών ως root είναι, ως κανονικός χρήστης, να τοποθετήσετε πρόθεμα σε καθεμία από αυτέςsudo
- Έχετε εγκατεστημένο ένα πρόγραμμα επεξεργασίας κειμένου και εξοικειωθείτε με αυτό, όπως vi, vim, nano, emacs ή παρόμοιο πρόγραμμα επεξεργασίας
Εγκαταστήστε την Python 3.7 στον διακομιστή ιστού σας
Στο Apache
Δυστυχώς, δεν υποστηρίζεται η εκτέλεση και των δύο εκδόσεων λειτουργικών μονάδων Apache (για Python 2.x και 3.x) ταυτόχρονα στο ίδιο σύστημα Arch, αλλά αυτό σπάνια αποτελεί πρόβλημα.
Για να χρησιμοποιήσετε το Python 3.x:
# pacman -S mod_wsgi
Ενεργοποιήστε τη mod_wsgiλειτουργική μονάδα Apache με επεξεργασία /etc/httpd/conf/httpd.confκαι στο τέλος της λίστας LoadModuleεντολών, προσθέστε τα εξής:
LoadModule wsgi_module modules/mod_wsgi.so
Στο Nginx
Για να χρησιμοποιήσετε το Python 3.x:
# pacman -S uwsgi-plugin-python
Δοκιμή Python
Μέσα στον κατάλληλο κατάλογο, δημιουργήστε test.pyμε τα ακόλουθα περιεχόμενα:
#-*- 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
Στο Apache
Προσθέστε στο τέλος του /etc/httpd/conf/httpd.confή εάν εκτελείτε πολλούς κεντρικούς υπολογιστές, επεξεργαστείτε το κατάλληλο αρχείο διαμόρφωσης και προσθέστε στο κατάλληλο <VirtualHost>μπλοκ:
WSGIScriptAlias /wsgi_app /srv/http/test.py
Επανεκκινήστε τον Apache:
# systemctl restart httpd
Σε ένα πρόγραμμα περιήγησης ιστού, επισκεφτείτε το http://YOUR-SERVER-WEB-ADDRESS-OR-IP/wsgi_appκαι θα δείτε μια δοκιμαστική σελίδα με τις εκδόσεις python και GCC.
Διαγράψτε το test.pyδοκιμαστικό αρχείο που μόλις δημιουργήσατε και το αρχείο WSGIScriptAliasστη διαμόρφωση του Apache.
Επανεκκινήστε τον Apache:
# systemctl restart httpd
Στο Nginx
Δημιουργήστε το αρχείο /etc/uwsgi/wsgi_app.iniμε τα ακόλουθα περιεχόμενα:
[uwsgi]
socket = /run/uwsgi/wsgi_app.sock
uid = http
gid = http
plugins = python
chdir = /usr/share/nginx/html/
wsgi-file=test.py
callable = application
Ξεκινήστε την υπηρεσία uWSGI wsqi_app:
# systemctl start uwsgi@wsgi_app
Επιτρέψτε στο Nginx να χρησιμοποιεί το uWSGI μέσω επεξεργασίας /etc/nginx/nginx.confκαι για κάθε μπλοκ διακομιστή που θέλετε να δοκιμάσετε, προσθέστε τα ακόλουθα. Εναλλακτικά, εάν χρησιμοποιείτε εικονικούς κεντρικούς υπολογιστές, επεξεργαστείτε το αρχείο διαμόρφωσης κάθε κεντρικού υπολογιστή:
location ~ \wsgi_app {
root /usr/share/nginx/html/;
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/wsgi_app.sock;
}
Επανεκκινήστε το Nginx:
# systemctl restart nginx
Σε ένα πρόγραμμα περιήγησης ιστού, επισκεφτείτε το http://YOUR-SERVER-WEB-ADDRESS-OR-IP/wsgi_appκαι θα δείτε μια δοκιμαστική σελίδα με τις εκδόσεις python και GCC.
Διαγράψτε το test.pyαρχείο που μόλις δημιουργήσατε και το μπλοκ τοποθεσίας που μόλις προσθέσατε /etc/nginx/nginx.confγια το wsgi_app.
Επανεκκινήστε το Nginx:
# systemctl restart nginx
Διακοπή της υπηρεσίας uWSGI wsgi_app:
# systemctl stop uwsgi@wsgi_app
Διαγράψτε τα /etc/uwsgi/wsgi_app.iniκαι test.pyδοκιμάστε τα αρχεία που μόλις δημιουργήσατε.