The mod_wsgi Apache module is used for serving Python scripts over HTTP via Apache web server. This tutorial helps you to how to install Apache mod_wsgi module on Ubuntu 16.04 (Xenial Xerus).
Step 1 β Prerequisites
Login to Ubuntu 16.04 server console via SSH and install some prerequisites packages on the system.
sudo apt-get update sudo apt-get install python libexpat1
Step 2 β Installing mod_wsgi Module with Apache
Before starting, you will need to install some prerequisite Apache components in order to work with mod_wsgi. You can install all required components by simply running the following command:
sudo apt-get update sudo apt-get install apache2 apache2-utils ssl-cert
Now, install mod_wsgi Apache module by running the following command:
sudo apt-get install libapache2-mod-wsgi
Restart Apache service to get mod_wsgi to work.
sudo systemctl restart apache2
Step 3 β Configure Apache for WSGI Module
Now you need to configure your Apache server to work with the mod_wsgi module. Letβs, create a python script to serve via mod_wsgi Apache module.
sudo vi /var/www/html/wsgi_test_script.py
Add the following content:
After that, you need to configure Apache server to serve this file over HTTP protocol. Letβs create a configuration file to serve wsgi_test_script.py script over a sub URL.
sudo nano /etc/apache2/conf-available/mod-wsgi.conf
Add the following content:
WSGIScriptAlias /test_wsgi /var/www/html/wsgi_test_script.py
After completing the above steps enable mod-wsgi configuration and restart Apache service.
sudo a2enconf mod-wsgi sudo systemctl restart apache2
Step 4 β Testing
The setup is ready now. You can test the script by accessing http://SERVER_IP//test_wsgi URL in a web browser. See below screenshot: