Pyramid
Pyramid to webowy framework do Pythona na licencji BSD. Na serwerach MyDevil.net możliwe jest uruchamianie stron opartych o ten framework dzięki zastosowaniu technologii Phusion Passenger.
Spis treści
[ukryj]Wstępna konfiguracja
Do uruchomienia strony napisanej w Pyramid należy pierw zadbać o prawidłową konfigurację środowiska oraz domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:
- Dodano środowisko virtualenv dla pythona 2.7 i zainstalowano pyramid -
pip install pyramid
. - Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS.
- Została dodana strona WWW typu python oraz ścieżką do pliku binarnego
>python
wewnątrz wcześniej skonfigurowanego środowiska.
Projekt Pyramid
Głównym katalogiem projektu Pyramid musi być folder /usr/home/login/domains/domena/public_python
. Należy również usunąć plik index.html poleceniem rm /usr/home/login/domains/domena/public_python/public/index.html
.
Konfiguracja Phusion Passenger
Ostatnim krokiem jest konfiguracja modułu Phusion Passenger, który jest odpowiedzialny za uruchomienie aplikacji Pyramid. Należy w katalogu projektu Pyramid(/usr/home/login/domains/domena/public_python
) utworzyć plik passenger_wsgi.py
i umieścić w nim następującą zawartość, modyfikując linijkę importu:
import sys, os
sys.path.append(os.getcwd())
from aplikacja import app as application
Przykładowy plik aplikacja.py (do umieszczenia w katalogu witryny w celu przetestowania działania Pyramid):
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')
app = config.make_wsgi_app()
if __name__ == '__main__':
server = make_server('0.0.0.0', 8080, app)
server.serve_forever()