• Home
  • Ubuntu 18.04
    • Whats New?
    • Upgrade Ubuntu
    • Install Java
    • Install Node.js
    • Install Docker
    • Install Git
    • Install LAMP Stack
  • Tutorials
    • AWS
    • Shell Scripting
    • Docker
    • Git
    • MongoDB
  • Funny Tools
  • FeedBack
  • Submit Article
  • About Us
TecAdmin
Menu
  • Home
  • Ubuntu 18.04
    • Whats New?
    • Upgrade Ubuntu
    • Install Java
    • Install Node.js
    • Install Docker
    • Install Git
    • Install LAMP Stack
  • Tutorials
    • AWS
    • Shell Scripting
    • Docker
    • Git
    • MongoDB
  • Funny Tools
  • FeedBack
  • Submit Article
  • About Us

How to Install Apache mod_wsgi Module on Ubuntu 16.04 (Xenial)

Written by Rahul, Updated on September 13, 2018
Ubuntu

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:

1
2
3
4
5
6
7
8
9
10
def application(environ,start_response):
    status = '200 OK'
    html = '<html>\n' \
           '<body>\n' \
           ' Hooray, mod_wsgi is working\n' \
           '</body>\n' \
           '</html>\n'
    response_header = [('Content-type','text/html')]
    start_response(status,response_header)
    return [html]

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:

Share it!
Share on Facebook
Share on Twitter
Share on Google+
Share on Reddit
Share on Tumblr
Rahul
Rahul
Connect on Facebook Connect on Twitter Connect on Google+

I, Rahul Kumar am the founder and chief editor of TecAdmin.net. I am a Red Hat Certified Engineer (RHCE) and working as an IT professional since 2009..

Leave a Reply

Cancel reply

Popular Posts

  • How to Setup Squid Proxy Server on Ubuntu 18.04 & 16.04
  • How To Install Zabbix Agent on Debian 9/8
  • How to Install and Configure Squid Proxy on Debian 9
  • How to Remove “public/index.php” from URL in Laravel
  • How To Install Wine 3 on Debian 9 (Stretch)
All rights reserved. © 2013-2018 TecAdmin.net. This site uses cookies. By using this website you agree our term and services