From ArchWiki
Revision as of 10:03, 6 August 2013 by Djszapi (talk | contribs) (Starting Service)
Jump to: navigation, search


Install package uwsgi in the official repositories. Note, the package does not come with plugins as it is just a compact package. External plugins have to be installed separately.

Starting Service

To enable the uwsgi service by default at start-up, run:

# systemctl enable uwsgi@helloworld.service

This will enable the service for the application configured in /etc/uwsgi/helloworld.ini. Otherwise, you can also enable it through the socket interface with the following command:

# systemctl enable uwsgi@helloworld.socket


You can create a configuration by editing and putting that in /etc/uwsgi/. There is a build file shipped with the package located at /etc/uwsgi/archlinux.ini.

More details can be found here: [1].

Application configuration

The following is a simple example to get python support. You may need to install the uwsgi-plugin-python or uwsgi-plugin-python2 plugin from the community repository by pacman.

chdir = /srv/http/helloworld
module = helloworld
plugins = python

It is also possible to run uwsgi separately with the following syntax for instance:

uwsgi --socket --plugin python2 --wsgi-file ~/foo.py --master --processes 4 --threads 2 --stats --uid --gid

Note, you should avoid running this command as root.

Nginx configuration
location / {
    root   /usr/share/nginx/html;
    index  index.html index.htm;
    include uwsgi_params;
    # uwsgi_pass unix:/var/run/uwsgi/helloworld.sock;

See Also