Either I’m a liar or you’re a moron. Nah, I’m just kidding. You’re okay!
A recapitulation of part of my setup, simplified and tested. The link I gave already has all this information and more. You have to have uWSGI with the PSGI extension built, as already mentioned–
> emacs /opt/app.psgi
#!/usr/bin/env perl
sub { [ 200, ["Content-type" => "text/plain"], ["OHAI"] ] }
--
# Start the apps.
> /opt/uwsgi_latest_from_installer/uwsgi --uid moo \
--pidfile /tmp/one.pid --socket 127.0.0.1:8100 \
--psgi /opt/app.psgi --processes 1 --master \
--daemonize /tmp/one.log
> /opt/uwsgi_latest_from_installer/uwsgi --uid moo \
--pidfile /tmp/two.pid --socket 127.0.0.1:8200 \
--psgi /opt/app.psgi --processes 1 --master \
--daemonize /tmp/two.log
--
# Edit the nginx config by adding the endpoints.
> emacs /etc/nginx/sites-enabled/your-site-config.conf
--
location /one {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8100;
uwsgi_modifier1 5;
}
location /two {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8200;
uwsgi_modifier1 5;
}
# Restart nginx and visit
# http://yourdomain/one
# http://yourdomain/two