Difference between revisions of "UWSGI"

From ArchWiki
Jump to: navigation, search
m (See Also)
m (See Also)
Line 48: Line 48:
 
* [http://uwsgi-docs.readthedocs.org/en/latest Official Documentation]
 
* [http://uwsgi-docs.readthedocs.org/en/latest Official Documentation]
 
* [https://github.com/unbit/uwsgi-docs UWsgi Github]
 
* [https://github.com/unbit/uwsgi-docs UWsgi Github]
 +
* [http://blog.kgriffs.com/ Fluffy White Stuff Benchmark]

Revision as of 09:38, 6 August 2013


Installation

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

or

# systemctl enable uwsgi@helloworld.socket

Configuring

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.

[uwsgi]
chdir = /srv/http/helloworld
module = helloworld
plugins = python

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

uwsgi --socket 127.0.0.1:3031 --plugin python2 --wsgi-file ~/foo.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191 --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;
    uwsgi_pass 127.0.0.1:3031;
}

See Also