Overview
Pyramid is a Python framework that is the spiritual successor to Pylon and Zope, frameworks popular in the mid-to-late 2000s. Pyramid is supported with on v6+ platforms using any Python version from 2.7 onward with Passenger.
Quickstart
All commands are done from the terminal for convenience.
- PREREQUISITE: create a suitable Passenger-compatible filesystem layout
- 
cd /var/www && mkdir -p pyramid/{tmp,public} 
 - 
 - OPTIONAL PREREQUISITE: determine a suitable Python version using pyenv
- 
cd pyramid && pyenv local 3.3.5 
 - 
 - Install Pyramid.
In the above example, using pyenv to set 3.3.5, Pyramid will be installed as a Python 3.3.5 egg.- 
pip install pyramid --no-use-wheel 
 - 
 - Create a startup file named 
passenger_wsgi.py, the de factor startup for Python-based apps. This is a simple “Hello World” application with routing that will, depending upon the route, respond with it. You can use vim or nano as a text-editor from the shell.from wsgiref.simple_server import make_server from pyramid.config import Configurator from pyramid.response import Response def hello_world(request): return Response('Hello %(name)s!' % request.matchdict) config = Configurator() config.add_route('hello', '/hello/{name}') config.add_view(hello_world, route_name='hello') application = config.make_wsgi_app() if __name__ == '__main__': server = make_server('0.0.0.0', 8080, app) server.serve_forever() - Connect 
public/to a subdomain - Inform Passenger to serve this as a Python application:
- 
echo "PassengerPython /.socket/python/shims/python" > public/.htaccess 
 - 
 - Enjoy!
 
Viewing launcher errors
In the event an application fails to launch, errors will be logged to passenger.log. See KB: Viewing launcher errors.
Restarting
Like any Passenger app, you can follow the general Passenger guidelines to restart an app.
See also
- Pyramid documentation
 - Django vs Flask vs Pyramid
 - Demo running on Sol, a v6 platform