The mod_wsgi Apache module is used for serving Python scripts over HTTP via the Apache web server. This tutorial helps you to how to install the Apache Python module (mod_wsgi) on CentOS 8 Linux. We will also create a sample page in Python and deploy it with the Apache web server.

Advertisement

You may like:

Step 1 – Prerequisites

Login to the CentOS 8 server console via SSH. Then must have python installed on our system. Use the following commands to install python as its dependencies on your system.

sudo dnf install python3 python3-pip

Step 2 – Install mod_wsgi Module

Before starting, you will need to install some prerequisite Apache components in order to work with mod_wsgi. You can install all the required components by simply running the following command:

sudo dnf install mod_wsgi httpd

Restart Apache service to get mod_wsgi to work.

sudo systemctl restart httpd.service

Step 3 – Configure Apache for WSGI

Next, create a python script to serve via the mod_wsgi Apache module. For testing, I have created a test_wsgi.py file under the default document root.

sudo vi /var/www/html/test_wsgi.py

And added the following content:

After that, configure the Apache server to serve this file over the web. Let’s create a configuration file to serve the test_wsgi.py script over a sub URL.

sudo vi /etc/httpd/conf.d/python-wsgi.conf

Add the following content:

WSGIScriptAlias /test_wsgi /var/www/html/test_wsgi.py

<Directory /var/www/html>
Order allow,deny
Allow from all
</Directory>

After completing the above steps enable mod-wsgi configuration and restart Apache service.

sudo systemctl restart httpd.service

Step 4 – Testing

The setup is ready now. You can test the script by accessing the following URL in a web browser. Change your-server-ip with the actual server IP or hostname.

 http://your-server-ip/test_wsgi

You will see the results as below:

Install Apache mod_wsgi Module on CentOS 8

Share.

5 Comments

  1. Because in Centos 8 and AlmaLinux 8 the mod_wsgi is not installed as expected, you should use the next command

    dnf -y install python3-mod_wsgi

  2. I don’t think this is applicable anymore in Centos 8.0.1905 as the mod_wsgi package is no longer available

    Nearest one I can find is python*-mod_wsgi

Leave A Reply


Exit mobile version