mod_wsgi je modul Apache, který lze použít pro obsluhu skriptů Python přes HTTP přes webový server Apache. Pomocí mod_wsgi můžete snadno nasadit aplikace napsané pomocí rámců a nástrojů jako Django, Web.py, Werkzug, Chery.py, TurboGears a Flask.
V tomto tutoriálu se naučíme, jak nainstalovat a nastavit mod_wsgi se serverem Apache na serveru Ubuntu 18.04 LTS (Bionic Beaver).
Požadavky
- Server se serverem Ubuntu 18.04.
- Uživatel bez oprávnění root s právy sudo.
- Statická IP adresa 192.168.43.229 nakonfigurovaná na vašem serveru.
Instalovat Apache a mod_wsgi
Než začnete, budete muset do systému nainstalovat některé požadované balíčky.
Všechny je můžete nainstalovat spuštěním následujícího příkazu:
sudo apt-get install python libexpat1 apache2 apache2-utils ssl-cert -y
Jakmile jsou nainstalovány všechny požadované balíčky, můžete pokračovat v instalaci mod_wsgi pomocí následujícího příkazu:
sudo apt-get install libapache2-mod-wsgi -y
Konfigurovat Apache pro mod_wsgi
Dále budete muset vytvořit python skript v kořenovém adresáři webu Apache, který bude sloužit prostřednictvím modulu mod_wsgi Apache.
Můžete to provést pomocí následujícího příkazu:
sudo nano /var/www/html/wsgy.py
Přidejte následující řádky:
def application(environ,start_response): status = '200 OK' html = '<html>\n' \ '<body>\n' \ '<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">\n' \ 'Welcome to mod_wsgi Test Page\n' \ '</div>\n' \ '</body>\n' \ '</html>\n' response_header = [('Content-type','text/html')] start_response(status,response_header) return [html]
Uložte a zavřete soubor. Poté udělte správná oprávnění souboru wsgi.py:
sudo chown www-data:www-data /var/www/html/wsgy.py
sudo chmod 755 /var/www/html/wsgy.py
Dále budete muset nakonfigurovat Apache, aby obsluhoval tento soubor přes protokol HTTP. Můžete to udělat vytvořením souboru wsgi.conf:
sudo nano /etc/apache2/conf-available/wsgi.conf
Přidejte následující řádky:
WSGIScriptAlias /wsgi /var/www/html/wsgy.py
Uložte a zavřete soubor. Poté udělte správná oprávnění souboru wsgi.py:
Poté povolte konfiguraci mod-wsgi a restartujte službu Apache pomocí následujícího příkazu:
sudo a2enconf wsgi
sudo systemctl restart apache2
Testujte skripty Python v Apache pomocí mod-wsgi
Nyní otevřete webový prohlížeč a zadejte adresu URL http://example.com/wsgi. Budete přesměrováni na následující stránku:
Odkazy
- Webový server Apache
- mod_wsgi
- Ubuntu